<?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#_cw7yuZpAEeOXzvVK2MY5wA">
  <uml:Profile xmi:id="_cwaO-JpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" metamodelReference="_cw3goppAEeOXzvVK2MY5wA">
    <eAnnotations xmi:id="_cwaO-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML">
      <contents xmi:type="ecore:EPackage" xmi:id="_cwaO-ppAEeOXzvVK2MY5wA" 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="_cwaO-5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwaPAJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwaO_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwaO_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaO_ppAEeOXzvVK2MY5wA" 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="_cwaPAJpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwaPAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwaPAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaPA5pAEeOXzvVK2MY5wA" 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="_cwaPBJpAEeOXzvVK2MY5wA" 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="_cwaPBppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwaPB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwaPCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaPCZpAEeOXzvVK2MY5wA" 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="_cwaPCppAEeOXzvVK2MY5wA" name="agent_role" ordered="false" eType="_cwaPGJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwaPDJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwaPDppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwaPEJpAEeOXzvVK2MY5wA" name="value_type" ordered="false" eType="_cwaPHZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwaPEppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwaPFJpAEeOXzvVK2MY5wA" 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="_cwaPFppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwaPGJpAEeOXzvVK2MY5wA" name="Agent_Role">
          <eAnnotations xmi:id="_cwaPGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwaPGppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwaPG5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwaPHJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwaPHZpAEeOXzvVK2MY5wA" name="Value_Type">
          <eAnnotations xmi:id="_cwaPHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwaPH5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwaPIJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwaPIZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwaPIppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwaPI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwaPJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaPJZpAEeOXzvVK2MY5wA" 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="_cwaPJppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwaPKJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwaPKppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwaPIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwaPK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwaPLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaPLZpAEeOXzvVK2MY5wA" 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="_cwaPL5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwaPIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwaPMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwaPMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaPMppAEeOXzvVK2MY5wA" 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="_cwaPNJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwaPNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwaPNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaPN5pAEeOXzvVK2MY5wA" 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="_cwaPOJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwaPOppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwaPPJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwaPNJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwaPPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwaPP5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwaPNJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwaPQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwaPQZpAEeOXzvVK2MY5wA" 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="_cwaPRJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwaPNJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwaPRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwaPR5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwaPAJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwaPSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwaPSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaPSppAEeOXzvVK2MY5wA" 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="_cwaPTJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwaPTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwaPTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaPT5pAEeOXzvVK2MY5wA" 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="_cwaPUJpAEeOXzvVK2MY5wA" 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="_cwaPUppAEeOXzvVK2MY5wA" 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="_cwaPVJpAEeOXzvVK2MY5wA" name="expression" abstract="true">
          <eAnnotations xmi:id="_cwaPVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwaPVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaPV5pAEeOXzvVK2MY5wA" 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="_cwaPWJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwaPWppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwaPXJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwaPVJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwaPXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwaPXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaPX5pAEeOXzvVK2MY5wA" 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="_cwaPYZpAEeOXzvVK2MY5wA" name="statement" eSuperTypes="_cwaPVJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwaPYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwayUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwayUZpAEeOXzvVK2MY5wA" 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="_cwayU5pAEeOXzvVK2MY5wA" name="flow">
          <eAnnotations xmi:id="_cwayVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwayVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwayVppAEeOXzvVK2MY5wA" 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="_cwayV5pAEeOXzvVK2MY5wA" 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="_cwayWZpAEeOXzvVK2MY5wA" 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="_cwayW5pAEeOXzvVK2MY5wA" 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="_cwayXZpAEeOXzvVK2MY5wA" 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="_cwayX5pAEeOXzvVK2MY5wA" name="procedure" eSuperTypes="_cwayZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwayYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwayYZpAEeOXzvVK2MY5wA" 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="_cwayZJpAEeOXzvVK2MY5wA" name="prescription" abstract="true">
          <eAnnotations xmi:id="_cwayZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwayZppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwayZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwayaJpAEeOXzvVK2MY5wA" 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="_cwayappAEeOXzvVK2MY5wA" name="intermediate">
          <eAnnotations xmi:id="_cwaya5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwaybJpAEeOXzvVK2MY5wA" 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="_cwaybppAEeOXzvVK2MY5wA" name="iterative" eSuperTypes="_cwayZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwayb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwaycJpAEeOXzvVK2MY5wA" 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="_cwayc5pAEeOXzvVK2MY5wA" name="iterator">
          <eAnnotations xmi:id="_cwaydJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwaydZpAEeOXzvVK2MY5wA" 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="_cwayd5pAEeOXzvVK2MY5wA" 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="_cwayeJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwayfZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwayeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwayeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaye5pAEeOXzvVK2MY5wA" 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="_cwayfZpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwayfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwayf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaygJpAEeOXzvVK2MY5wA" 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="_cwaygZpAEeOXzvVK2MY5wA" 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="_cwayg5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwayhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwayhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwayhppAEeOXzvVK2MY5wA" 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="_cwayh5pAEeOXzvVK2MY5wA" name="agent_role" ordered="false" eType="_cwaylZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwayiZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwayi5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwayjZpAEeOXzvVK2MY5wA" name="value_type" ordered="false" eType="_cwaymppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwayj5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwaykZpAEeOXzvVK2MY5wA" 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="_cwayk5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwaylZpAEeOXzvVK2MY5wA" name="Agent_Role">
          <eAnnotations xmi:id="_cwaylppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwayl5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwaymJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwaymZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwaymppAEeOXzvVK2MY5wA" name="Value_Type">
          <eAnnotations xmi:id="_cwaym5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwaynJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwaynZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwaynppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwayn5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwayoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwayoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwayoppAEeOXzvVK2MY5wA" 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="_cwayo5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwaypZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwayp5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwayn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwayqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwayqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwayqppAEeOXzvVK2MY5wA" 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="_cwayrJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwayn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwayrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwayrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwayr5pAEeOXzvVK2MY5wA" 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="_cwaysZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwaysppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cways5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaytJpAEeOXzvVK2MY5wA" 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="_cwaytZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwayt5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwayuZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwaysZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwayuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwayvJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwaysZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwayvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwayvppAEeOXzvVK2MY5wA" 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="_cwaywZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwaysZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwaywppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwayxJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwayfZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwayxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwayxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwayx5pAEeOXzvVK2MY5wA" 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="_cwayyZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwayyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwayy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwayzJpAEeOXzvVK2MY5wA" 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="_cwayzZpAEeOXzvVK2MY5wA" 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="_cwayz5pAEeOXzvVK2MY5wA" 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="_cway0ZpAEeOXzvVK2MY5wA" name="expression" abstract="true">
          <eAnnotations xmi:id="_cway0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cway05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cway1JpAEeOXzvVK2MY5wA" 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="_cway1ZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cway15pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cway2ZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cway0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cway2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cway25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cway3JpAEeOXzvVK2MY5wA" 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="_cway3ppAEeOXzvVK2MY5wA" name="statement" eSuperTypes="_cway0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cway35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cway4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cway4ZpAEeOXzvVK2MY5wA" 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="_cway45pAEeOXzvVK2MY5wA" name="flow">
          <eAnnotations xmi:id="_cway5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cway5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cway5ppAEeOXzvVK2MY5wA" 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="_cway55pAEeOXzvVK2MY5wA" 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="_cway6ZpAEeOXzvVK2MY5wA" 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="_cway65pAEeOXzvVK2MY5wA" 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="_cway7ZpAEeOXzvVK2MY5wA" 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="_cway75pAEeOXzvVK2MY5wA" name="procedure" eSuperTypes="_cway9JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cway8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cway8ZpAEeOXzvVK2MY5wA" 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="_cway9JpAEeOXzvVK2MY5wA" name="prescription" abstract="true">
          <eAnnotations xmi:id="_cway9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cway9ppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cway95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cway-JpAEeOXzvVK2MY5wA" 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="_cway-ppAEeOXzvVK2MY5wA" name="intermediate">
          <eAnnotations xmi:id="_cway-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cway_JpAEeOXzvVK2MY5wA" 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="_cway_ppAEeOXzvVK2MY5wA" name="iterative" eSuperTypes="_cway9JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cway_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwazAJpAEeOXzvVK2MY5wA" 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="_cwazA5pAEeOXzvVK2MY5wA" name="iterator">
          <eAnnotations xmi:id="_cwazBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwazBZpAEeOXzvVK2MY5wA" 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="_cwazB5pAEeOXzvVK2MY5wA" 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="_cwazCJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwazDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwazCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwazCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazC5pAEeOXzvVK2MY5wA" 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="_cwazDZpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwazDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwazD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazEJpAEeOXzvVK2MY5wA" 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="_cwazEZpAEeOXzvVK2MY5wA" 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="_cwazE5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwazFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwazFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazFppAEeOXzvVK2MY5wA" 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="_cwazF5pAEeOXzvVK2MY5wA" name="agent_role" ordered="false" eType="_cwazJZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwazGZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwazG5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwazHZpAEeOXzvVK2MY5wA" name="value_type" ordered="false" eType="_cwazKppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwazH5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwazIZpAEeOXzvVK2MY5wA" 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="_cwazI5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwazJZpAEeOXzvVK2MY5wA" name="Agent_Role">
          <eAnnotations xmi:id="_cwazJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwazJ5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwazKJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwazKZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwazKppAEeOXzvVK2MY5wA" name="Value_Type">
          <eAnnotations xmi:id="_cwazK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwazLJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwazLZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwazLppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwazL5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwazMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwazMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazMppAEeOXzvVK2MY5wA" 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="_cwazM5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwazNZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwazN5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwazL5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwazOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwazOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazOppAEeOXzvVK2MY5wA" 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="_cwazPJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwazL5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwazPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwazPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazP5pAEeOXzvVK2MY5wA" 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="_cwazQZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwazQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwazQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazRJpAEeOXzvVK2MY5wA" 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="_cwazRZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwazR5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwazSZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwazQZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwazSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwazTJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwazQZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwazTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwazTppAEeOXzvVK2MY5wA" 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="_cwazUZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwazQZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwazUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwazVJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwazDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwazVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwazVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazV5pAEeOXzvVK2MY5wA" 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="_cwazWZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwazWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwazW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazXJpAEeOXzvVK2MY5wA" 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="_cwazXZpAEeOXzvVK2MY5wA" 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="_cwazX5pAEeOXzvVK2MY5wA" 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="_cwazYZpAEeOXzvVK2MY5wA" name="expression" abstract="true">
          <eAnnotations xmi:id="_cwazYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwazY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazZJpAEeOXzvVK2MY5wA" 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="_cwazZZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwazZ5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwazaZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwazYZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwazappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwaza5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazbJpAEeOXzvVK2MY5wA" 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="_cwazbppAEeOXzvVK2MY5wA" name="statement" eSuperTypes="_cwazYZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwazb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwazcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazcZpAEeOXzvVK2MY5wA" 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="_cwazc5pAEeOXzvVK2MY5wA" name="flow">
          <eAnnotations xmi:id="_cwazdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwazdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazdppAEeOXzvVK2MY5wA" 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="_cwazd5pAEeOXzvVK2MY5wA" 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="_cwazeZpAEeOXzvVK2MY5wA" 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="_cwaze5pAEeOXzvVK2MY5wA" 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="_cwazfZpAEeOXzvVK2MY5wA" 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="_cwazf5pAEeOXzvVK2MY5wA" name="procedure" eSuperTypes="_cwazhJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwazgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwazgZpAEeOXzvVK2MY5wA" 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="_cwazhJpAEeOXzvVK2MY5wA" name="prescription" abstract="true">
          <eAnnotations xmi:id="_cwazhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwazhppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwazh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwaziJpAEeOXzvVK2MY5wA" 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="_cwazippAEeOXzvVK2MY5wA" name="intermediate">
          <eAnnotations xmi:id="_cwazi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwazjJpAEeOXzvVK2MY5wA" 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="_cwazjppAEeOXzvVK2MY5wA" name="iterative" eSuperTypes="_cwazhJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwazj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwazkJpAEeOXzvVK2MY5wA" 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="_cwazk5pAEeOXzvVK2MY5wA" name="iterator">
          <eAnnotations xmi:id="_cwazlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwazlZpAEeOXzvVK2MY5wA" 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="_cwazl5pAEeOXzvVK2MY5wA" 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="_cwazmJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwaznZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwazmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwazmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazm5pAEeOXzvVK2MY5wA" 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="_cwaznZpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwaznppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwazn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazoJpAEeOXzvVK2MY5wA" 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="_cwazoZpAEeOXzvVK2MY5wA" 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="_cwazo5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwazpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwazpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazpppAEeOXzvVK2MY5wA" 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="_cwazp5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwaztZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwazqZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwazq5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwazrZpAEeOXzvVK2MY5wA" name="value_type" ordered="false" eType="_cwazuppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwazr5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwazsZpAEeOXzvVK2MY5wA" 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="_cwazs5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwaztZpAEeOXzvVK2MY5wA" name="Agent_Role">
          <eAnnotations xmi:id="_cwaztppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwazt5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwazuJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwazuZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwazuppAEeOXzvVK2MY5wA" name="Value_Type">
          <eAnnotations xmi:id="_cwazu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwazvJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwazvZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwazvppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwazv5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwazwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwazwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazwppAEeOXzvVK2MY5wA" 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="_cwazw5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwazxZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwazx5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwazv5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwazyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwazyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazyppAEeOXzvVK2MY5wA" 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="_cwazzJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwazv5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwazzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwazzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwazz5pAEeOXzvVK2MY5wA" 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="_cwaz0ZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwaz0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwaz05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaz1JpAEeOXzvVK2MY5wA" 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="_cwaz1ZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwaz15pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwaz2ZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwaz0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwaz2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwaz3JpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwaz0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwaz3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwaz3ppAEeOXzvVK2MY5wA" 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="_cwaz4ZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwaz0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwaz4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwaz5JpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwaznZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwaz5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwaz5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaz55pAEeOXzvVK2MY5wA" 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="_cwaz6ZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwaz6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwaz65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaz7JpAEeOXzvVK2MY5wA" 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="_cwaz7ZpAEeOXzvVK2MY5wA" 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="_cwaz75pAEeOXzvVK2MY5wA" 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="_cwaz8ZpAEeOXzvVK2MY5wA" name="expression" abstract="true">
          <eAnnotations xmi:id="_cwaz8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwaz85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaz9JpAEeOXzvVK2MY5wA" 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="_cwaz9ZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwaz95pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwaz-ZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwaz8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwaz-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwaz-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwaz_JpAEeOXzvVK2MY5wA" 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="_cwaz_ppAEeOXzvVK2MY5wA" name="statement" eSuperTypes="_cwaz8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwaz_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa0AJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa0AZpAEeOXzvVK2MY5wA" 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="_cwa0A5pAEeOXzvVK2MY5wA" name="flow">
          <eAnnotations xmi:id="_cwa0BJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa0BZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa0BppAEeOXzvVK2MY5wA" 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="_cwa0B5pAEeOXzvVK2MY5wA" 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="_cwa0CZpAEeOXzvVK2MY5wA" 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="_cwa0C5pAEeOXzvVK2MY5wA" 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="_cwa0DZpAEeOXzvVK2MY5wA" 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="_cwa0D5pAEeOXzvVK2MY5wA" name="procedure" eSuperTypes="_cwa0FJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa0EJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa0EZpAEeOXzvVK2MY5wA" 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="_cwa0FJpAEeOXzvVK2MY5wA" name="prescription" abstract="true">
          <eAnnotations xmi:id="_cwa0FZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa0FppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwa0F5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa0GJpAEeOXzvVK2MY5wA" 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="_cwa0GppAEeOXzvVK2MY5wA" name="intermediate">
          <eAnnotations xmi:id="_cwa0G5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa0HJpAEeOXzvVK2MY5wA" 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="_cwa0HppAEeOXzvVK2MY5wA" name="iterative" eSuperTypes="_cwa0FJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa0H5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa0IJpAEeOXzvVK2MY5wA" 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="_cwa0I5pAEeOXzvVK2MY5wA" name="iterator">
          <eAnnotations xmi:id="_cwa0JJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa0JZpAEeOXzvVK2MY5wA" 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="_cwa0J5pAEeOXzvVK2MY5wA" 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="_cwa0KJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwa0LZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa0KZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa0KppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa0K5pAEeOXzvVK2MY5wA" 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="_cwa0LZpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwa0LppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa0L5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa0MJpAEeOXzvVK2MY5wA" 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="_cwa0MZpAEeOXzvVK2MY5wA" 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="_cwa0M5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwa0NJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa0NZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa0NppAEeOXzvVK2MY5wA" 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="_cwa0N5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwa0RZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwa0OZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwa0O5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwa0PZpAEeOXzvVK2MY5wA" name="value_type" ordered="false" eType="_cwa0SppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwa0P5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa0QZpAEeOXzvVK2MY5wA" 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="_cwa0Q5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwa0RZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwa0RppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwa0R5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwa0SJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwa0SZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwa0SppAEeOXzvVK2MY5wA" name="Value_Type">
          <eAnnotations xmi:id="_cwa0S5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwa0TJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwa0TZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwa0TppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa0T5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwa0UJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa0UZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa0UppAEeOXzvVK2MY5wA" 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="_cwa0U5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa0VZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa0V5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwa0T5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa0WJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa0WZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa0WppAEeOXzvVK2MY5wA" 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="_cwa0XJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwa0T5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa0XZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa0XppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa0X5pAEeOXzvVK2MY5wA" 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="_cwa0YZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwa0YppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa0Y5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa0ZJpAEeOXzvVK2MY5wA" 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="_cwa0ZZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa0Z5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa0aZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwa0YZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa0appAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa0bJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwa0YZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa0bZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa0bppAEeOXzvVK2MY5wA" 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="_cwa0cZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwa0YZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa0cppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa0dJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwa0LZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa0dZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa0dppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa0d5pAEeOXzvVK2MY5wA" 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="_cwa0eZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwa0eppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa0e5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa0fJpAEeOXzvVK2MY5wA" 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="_cwa0fZpAEeOXzvVK2MY5wA" 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="_cwa0f5pAEeOXzvVK2MY5wA" 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="_cwa0gZpAEeOXzvVK2MY5wA" name="expression" abstract="true">
          <eAnnotations xmi:id="_cwa0gppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa0g5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa0hJpAEeOXzvVK2MY5wA" 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="_cwa0hZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa0h5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa0iZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwa0gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa0ippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa0i5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa0jJpAEeOXzvVK2MY5wA" 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="_cwa0jppAEeOXzvVK2MY5wA" name="statement" eSuperTypes="_cwa0gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa0j5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa0kJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa0kZpAEeOXzvVK2MY5wA" 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="_cwa0k5pAEeOXzvVK2MY5wA" name="flow">
          <eAnnotations xmi:id="_cwa0lJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa0lZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa0lppAEeOXzvVK2MY5wA" 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="_cwa0l5pAEeOXzvVK2MY5wA" 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="_cwa0mZpAEeOXzvVK2MY5wA" 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="_cwa0m5pAEeOXzvVK2MY5wA" 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="_cwa0nZpAEeOXzvVK2MY5wA" 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="_cwa0n5pAEeOXzvVK2MY5wA" name="procedure" eSuperTypes="_cwa0pJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa0oJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa0oZpAEeOXzvVK2MY5wA" 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="_cwa0pJpAEeOXzvVK2MY5wA" name="prescription" abstract="true">
          <eAnnotations xmi:id="_cwa0pZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa0pppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwa0p5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa0qJpAEeOXzvVK2MY5wA" 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="_cwa0qppAEeOXzvVK2MY5wA" name="intermediate">
          <eAnnotations xmi:id="_cwa0q5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa0rJpAEeOXzvVK2MY5wA" 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="_cwa0rppAEeOXzvVK2MY5wA" name="iterative" eSuperTypes="_cwa0pJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa0r5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa0sJpAEeOXzvVK2MY5wA" 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="_cwa0s5pAEeOXzvVK2MY5wA" name="iterator">
          <eAnnotations xmi:id="_cwa0tJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa0tZpAEeOXzvVK2MY5wA" 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="_cwa0t5pAEeOXzvVK2MY5wA" 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="_cwa0uJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwa0vZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa0uZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa0uppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa0u5pAEeOXzvVK2MY5wA" 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="_cwa0vZpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwa0vppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa0v5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa0wJpAEeOXzvVK2MY5wA" 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="_cwa0wZpAEeOXzvVK2MY5wA" 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="_cwa0w5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwa0xJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa0xZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa0xppAEeOXzvVK2MY5wA" 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="_cwa0x5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwa01ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwa0yZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwa0y5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwa0zZpAEeOXzvVK2MY5wA" name="value_type" ordered="false" eType="_cwa02ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwa0z5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa00ZpAEeOXzvVK2MY5wA" 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="_cwa005pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwa01ZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwa01ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwa015pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwa02JpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwa02ZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwa02ppAEeOXzvVK2MY5wA" name="Value_Type">
          <eAnnotations xmi:id="_cwa025pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwa03JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwa03ZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwa03ppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa035pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwa04JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa04ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa04ppAEeOXzvVK2MY5wA" 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="_cwa045pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa05ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa055pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwa035pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa06JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa06ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa06ppAEeOXzvVK2MY5wA" 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="_cwa07JpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwa035pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa07ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa07ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa075pAEeOXzvVK2MY5wA" 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="_cwa08ZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwa08ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa085pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa09JpAEeOXzvVK2MY5wA" 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="_cwa09ZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa095pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa0-ZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwa08ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa0-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa0_JpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwa08ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa0_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa0_ppAEeOXzvVK2MY5wA" 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="_cwa1AZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwa08ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa1AppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa1BJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwa0vZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa1BZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa1BppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa1B5pAEeOXzvVK2MY5wA" 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="_cwa1CZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwa1CppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa1C5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa1DJpAEeOXzvVK2MY5wA" 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="_cwa1DZpAEeOXzvVK2MY5wA" 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="_cwa1D5pAEeOXzvVK2MY5wA" 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="_cwa1EZpAEeOXzvVK2MY5wA" name="expression" abstract="true">
          <eAnnotations xmi:id="_cwa1EppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa1E5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa1FJpAEeOXzvVK2MY5wA" 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="_cwa1FZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa1F5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa1GZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwa1EZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa1GppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa1G5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa1HJpAEeOXzvVK2MY5wA" 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="_cwa1HppAEeOXzvVK2MY5wA" name="statement" eSuperTypes="_cwa1EZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa1H5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa1IJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa1IZpAEeOXzvVK2MY5wA" 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="_cwa1I5pAEeOXzvVK2MY5wA" name="flow">
          <eAnnotations xmi:id="_cwa1JJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa1JZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa1JppAEeOXzvVK2MY5wA" 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="_cwa1J5pAEeOXzvVK2MY5wA" 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="_cwa1KZpAEeOXzvVK2MY5wA" 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="_cwa1K5pAEeOXzvVK2MY5wA" 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="_cwa1LZpAEeOXzvVK2MY5wA" 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="_cwa1L5pAEeOXzvVK2MY5wA" name="procedure" eSuperTypes="_cwa1NJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa1MJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa1MZpAEeOXzvVK2MY5wA" 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="_cwa1NJpAEeOXzvVK2MY5wA" name="provision" abstract="true">
          <eAnnotations xmi:id="_cwa1NZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa1NppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwa1N5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa1OJpAEeOXzvVK2MY5wA" 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="_cwa1OppAEeOXzvVK2MY5wA" name="intermediate">
          <eAnnotations xmi:id="_cwa1O5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa1PJpAEeOXzvVK2MY5wA" 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="_cwa1PppAEeOXzvVK2MY5wA" name="iterative" eSuperTypes="_cwa1NJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa1P5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa1QJpAEeOXzvVK2MY5wA" 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="_cwa1Q5pAEeOXzvVK2MY5wA" name="iterator">
          <eAnnotations xmi:id="_cwa1RJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa1RZpAEeOXzvVK2MY5wA" 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="_cwa1R5pAEeOXzvVK2MY5wA" 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="_cwa1SJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwa1TZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa1SZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa1SppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa1S5pAEeOXzvVK2MY5wA" 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="_cwa1TZpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwa1TppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa1T5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa1UJpAEeOXzvVK2MY5wA" 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="_cwa1UZpAEeOXzvVK2MY5wA" 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="_cwa1U5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwa1VJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa1VZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa1VppAEeOXzvVK2MY5wA" 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="_cwa1V5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwa1ZZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwa1WZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwa1W5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwa1XZpAEeOXzvVK2MY5wA" name="value_type" ordered="false" eType="_cwa1appAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwa1X5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa1YZpAEeOXzvVK2MY5wA" 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="_cwa1Y5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwa1ZZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwa1ZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwa1Z5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwa1aJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwa1aZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwa1appAEeOXzvVK2MY5wA" name="Value_Type">
          <eAnnotations xmi:id="_cwa1a5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwa1bJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwa1bZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwa1bppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa1b5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwa1cJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa1cZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa1cppAEeOXzvVK2MY5wA" 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="_cwa1c5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa1dZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa1d5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwa1b5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa1eJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa1eZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa1eppAEeOXzvVK2MY5wA" 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="_cwa1fJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwa1b5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa1fZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa1fppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa1f5pAEeOXzvVK2MY5wA" 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="_cwa1gZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwa1gppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa1g5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa1hJpAEeOXzvVK2MY5wA" 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="_cwa1hZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa1h5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa1iZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwa1gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa1ippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa1jJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwa1gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa1jZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwa1jppAEeOXzvVK2MY5wA" 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="_cwa1kZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwa1gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa1kppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwa1lJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwa1TZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwa1lZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa1lppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa1l5pAEeOXzvVK2MY5wA" 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="_cwa1mZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwa1mppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwa1m5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwa1nJpAEeOXzvVK2MY5wA" 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="_cwa1nZpAEeOXzvVK2MY5wA" 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="_cwa1n5pAEeOXzvVK2MY5wA" 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="_cwbZYZpAEeOXzvVK2MY5wA" name="expression" abstract="true">
          <eAnnotations xmi:id="_cwbZYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbZY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbZZJpAEeOXzvVK2MY5wA" 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="_cwbZZZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbZZ5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbZaZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwbZYZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbZappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbZa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbZbJpAEeOXzvVK2MY5wA" 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="_cwbZbppAEeOXzvVK2MY5wA" name="statement" eSuperTypes="_cwbZYZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbZb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbZcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbZcZpAEeOXzvVK2MY5wA" 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="_cwbZc5pAEeOXzvVK2MY5wA" name="flow">
          <eAnnotations xmi:id="_cwbZdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbZdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbZdppAEeOXzvVK2MY5wA" 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="_cwbZd5pAEeOXzvVK2MY5wA" 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="_cwbZeZpAEeOXzvVK2MY5wA" 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="_cwbZe5pAEeOXzvVK2MY5wA" 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="_cwbZfZpAEeOXzvVK2MY5wA" 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="_cwbZf5pAEeOXzvVK2MY5wA" name="procedure" eSuperTypes="_cwbZhJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbZgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbZgZpAEeOXzvVK2MY5wA" 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="_cwbZhJpAEeOXzvVK2MY5wA" name="provision" abstract="true">
          <eAnnotations xmi:id="_cwbZhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbZhppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwbZh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbZiJpAEeOXzvVK2MY5wA" 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="_cwbZippAEeOXzvVK2MY5wA" name="intermediate">
          <eAnnotations xmi:id="_cwbZi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbZjJpAEeOXzvVK2MY5wA" 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="_cwbZjppAEeOXzvVK2MY5wA" name="iterative" eSuperTypes="_cwbZhJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbZj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbZkJpAEeOXzvVK2MY5wA" 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="_cwbZk5pAEeOXzvVK2MY5wA" name="iterator">
          <eAnnotations xmi:id="_cwbZlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbZlZpAEeOXzvVK2MY5wA" 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="_cwbZl5pAEeOXzvVK2MY5wA" 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="_cwbZmJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwbZnZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbZmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbZmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbZm5pAEeOXzvVK2MY5wA" 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="_cwbZnZpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwbZnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbZn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbZoJpAEeOXzvVK2MY5wA" 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="_cwbZoZpAEeOXzvVK2MY5wA" 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="_cwbZo5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwbZpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbZpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbZpppAEeOXzvVK2MY5wA" 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="_cwbZp5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwbZtZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbZqZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbZq5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbZrZpAEeOXzvVK2MY5wA" name="value_type" ordered="false" eType="_cwbZuppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbZr5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbZsZpAEeOXzvVK2MY5wA" 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="_cwbZs5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwbZtZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwbZtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwbZt5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwbZuJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwbZuZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwbZuppAEeOXzvVK2MY5wA" name="Value_Type">
          <eAnnotations xmi:id="_cwbZu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwbZvJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwbZvZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwbZvppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbZv5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwbZwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbZwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbZwppAEeOXzvVK2MY5wA" 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="_cwbZw5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbZxZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbZx5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwbZv5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbZyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbZyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbZyppAEeOXzvVK2MY5wA" 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="_cwbZzJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwbZv5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbZzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbZzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbZz5pAEeOXzvVK2MY5wA" 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="_cwbZ0ZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwbZ0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbZ05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbZ1JpAEeOXzvVK2MY5wA" 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="_cwbZ1ZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbZ15pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbZ2ZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwbZ0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbZ2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbZ3JpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwbZ0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbZ3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbZ3ppAEeOXzvVK2MY5wA" 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="_cwbZ4ZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwbZ0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbZ4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbZ5JpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwbZnZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbZ5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbZ5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbZ55pAEeOXzvVK2MY5wA" 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="_cwbZ6ZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwbZ6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbZ65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbZ7JpAEeOXzvVK2MY5wA" 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="_cwbZ7ZpAEeOXzvVK2MY5wA" 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="_cwbZ75pAEeOXzvVK2MY5wA" 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="_cwbZ8ZpAEeOXzvVK2MY5wA" name="expression" abstract="true">
          <eAnnotations xmi:id="_cwbZ8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbZ85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbZ9JpAEeOXzvVK2MY5wA" 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="_cwbZ9ZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbZ95pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbZ-ZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwbZ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbZ-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbZ-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbZ_JpAEeOXzvVK2MY5wA" 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="_cwbZ_ppAEeOXzvVK2MY5wA" name="statement" eSuperTypes="_cwbZ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbZ_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbaAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbaAZpAEeOXzvVK2MY5wA" 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="_cwbaA5pAEeOXzvVK2MY5wA" name="flow">
          <eAnnotations xmi:id="_cwbaBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbaBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbaBppAEeOXzvVK2MY5wA" 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="_cwbaB5pAEeOXzvVK2MY5wA" 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="_cwbaCZpAEeOXzvVK2MY5wA" 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="_cwbaC5pAEeOXzvVK2MY5wA" 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="_cwbaDZpAEeOXzvVK2MY5wA" 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="_cwbaD5pAEeOXzvVK2MY5wA" name="procedure" eSuperTypes="_cwbaFJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbaEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbaEZpAEeOXzvVK2MY5wA" 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="_cwbaFJpAEeOXzvVK2MY5wA" name="prescription" abstract="true">
          <eAnnotations xmi:id="_cwbaFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbaFppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwbaF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbaGJpAEeOXzvVK2MY5wA" 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="_cwbaGppAEeOXzvVK2MY5wA" name="intermediate">
          <eAnnotations xmi:id="_cwbaG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbaHJpAEeOXzvVK2MY5wA" 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="_cwbaHppAEeOXzvVK2MY5wA" name="iterative" eSuperTypes="_cwbaFJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbaH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbaIJpAEeOXzvVK2MY5wA" 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="_cwbaI5pAEeOXzvVK2MY5wA" name="iterator">
          <eAnnotations xmi:id="_cwbaJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbaJZpAEeOXzvVK2MY5wA" 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="_cwbaJ5pAEeOXzvVK2MY5wA" 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="_cwbaKJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwbaLZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbaKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbaKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbaK5pAEeOXzvVK2MY5wA" 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="_cwbaLZpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwbaLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbaL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbaMJpAEeOXzvVK2MY5wA" 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="_cwbaMZpAEeOXzvVK2MY5wA" 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="_cwbaM5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwbaNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbaNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbaNppAEeOXzvVK2MY5wA" 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="_cwbaN5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwbaRZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbaOZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbaO5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbaPZpAEeOXzvVK2MY5wA" name="value_type" ordered="false" eType="_cwbaSppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbaP5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbaQZpAEeOXzvVK2MY5wA" 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="_cwbaQ5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwbaRZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwbaRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwbaR5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwbaSJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwbaSZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwbaSppAEeOXzvVK2MY5wA" name="Value_Type">
          <eAnnotations xmi:id="_cwbaS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwbaTJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwbaTZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwbaTppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbaT5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwbaUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbaUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbaUppAEeOXzvVK2MY5wA" 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="_cwbaU5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbaVZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbaV5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwbaT5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbaWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbaWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbaWppAEeOXzvVK2MY5wA" 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="_cwbaXJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwbaT5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbaXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbaXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbaX5pAEeOXzvVK2MY5wA" 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="_cwbaYZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwbaYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbaY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbaZJpAEeOXzvVK2MY5wA" 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="_cwbaZZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbaZ5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbaaZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwbaYZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbaappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbabJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwbaYZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbabZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbabppAEeOXzvVK2MY5wA" 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="_cwbacZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwbaYZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbacppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbadJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwbaLZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbadZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbadppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbad5pAEeOXzvVK2MY5wA" 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="_cwbaeZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwbaeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbae5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbafJpAEeOXzvVK2MY5wA" 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="_cwbafZpAEeOXzvVK2MY5wA" 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="_cwbaf5pAEeOXzvVK2MY5wA" 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="_cwbagZpAEeOXzvVK2MY5wA" name="expression" abstract="true">
          <eAnnotations xmi:id="_cwbagppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbag5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbahJpAEeOXzvVK2MY5wA" 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="_cwbahZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbah5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbaiZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwbagZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbaippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbai5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbajJpAEeOXzvVK2MY5wA" 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="_cwbajppAEeOXzvVK2MY5wA" name="statement" eSuperTypes="_cwbagZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbaj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbakJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbakZpAEeOXzvVK2MY5wA" 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="_cwbak5pAEeOXzvVK2MY5wA" name="flow">
          <eAnnotations xmi:id="_cwbalJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbalZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbalppAEeOXzvVK2MY5wA" 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="_cwbal5pAEeOXzvVK2MY5wA" 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="_cwbamZpAEeOXzvVK2MY5wA" 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="_cwbam5pAEeOXzvVK2MY5wA" 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="_cwbanZpAEeOXzvVK2MY5wA" 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="_cwban5pAEeOXzvVK2MY5wA" name="procedure" eSuperTypes="_cwbapJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbaoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbaoZpAEeOXzvVK2MY5wA" 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="_cwbapJpAEeOXzvVK2MY5wA" name="legal_procedure" abstract="true">
          <eAnnotations xmi:id="_cwbapZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbapppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwbap5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbaqJpAEeOXzvVK2MY5wA" 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="_cwbaqppAEeOXzvVK2MY5wA" name="intermediate">
          <eAnnotations xmi:id="_cwbaq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbarJpAEeOXzvVK2MY5wA" 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="_cwbarppAEeOXzvVK2MY5wA" name="iterative" eSuperTypes="_cwbapJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbar5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbasJpAEeOXzvVK2MY5wA" 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="_cwbas5pAEeOXzvVK2MY5wA" name="iterator">
          <eAnnotations xmi:id="_cwbatJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbatZpAEeOXzvVK2MY5wA" 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="_cwbat5pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_OC5-QFw1EeOqqeCPduFc4Q/316" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbauJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwbavZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbauZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbauppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbau5pAEeOXzvVK2MY5wA" 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="_cwbavZpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwbavppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbav5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbawJpAEeOXzvVK2MY5wA" 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="_cwbawZpAEeOXzvVK2MY5wA" 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="_cwbaw5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwbaxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbaxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbaxppAEeOXzvVK2MY5wA" 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="_cwbax5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwba1ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbayZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbay5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbazZpAEeOXzvVK2MY5wA" name="value_type" ordered="false" eType="_cwba2ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbaz5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwba0ZpAEeOXzvVK2MY5wA" 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="_cwba05pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwba1ZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwba1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwba15pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwba2JpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwba2ZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwba2ppAEeOXzvVK2MY5wA" name="Value_Type">
          <eAnnotations xmi:id="_cwba25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwba3JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwba3ZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwba3ppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwba35pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwba4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwba4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwba4ppAEeOXzvVK2MY5wA" 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="_cwba45pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwba5ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwba55pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwba35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwba6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwba6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwba6ppAEeOXzvVK2MY5wA" 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="_cwba7JpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwba35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwba7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwba7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwba75pAEeOXzvVK2MY5wA" 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="_cwba8ZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwba8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwba85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwba9JpAEeOXzvVK2MY5wA" 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="_cwba9ZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwba95pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwba-ZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwba8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwba-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwba_JpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwba8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwba_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwba_5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwba8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbbAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbbAppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwbavZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbbA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbbBZpAEeOXzvVK2MY5wA" 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="_cwbbB5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwbbCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbbCppAEeOXzvVK2MY5wA" 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="_cwbbC5pAEeOXzvVK2MY5wA" 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="_cwbbDZpAEeOXzvVK2MY5wA" 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="_cwbbD5pAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwbbEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbbEppAEeOXzvVK2MY5wA" 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="_cwbbE5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbbFZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbbF5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwbbD5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbbGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbbGppAEeOXzvVK2MY5wA" 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="_cwbbHJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwbbD5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbbHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbbH5pAEeOXzvVK2MY5wA" 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="_cwbbIZpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwbbIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbbJJpAEeOXzvVK2MY5wA" 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="_cwbbJZpAEeOXzvVK2MY5wA" 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="_cwbbJ5pAEeOXzvVK2MY5wA" 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="_cwbbKZpAEeOXzvVK2MY5wA" 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="_cwbbK5pAEeOXzvVK2MY5wA" 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="_cwbbLZpAEeOXzvVK2MY5wA" name="procedure" eSuperTypes="_cwbbMppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbbLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbbL5pAEeOXzvVK2MY5wA" 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="_cwbbMppAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwbbM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbbNJpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwbbNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbbNppAEeOXzvVK2MY5wA" 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="_cwbbOJpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwbbOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbbOppAEeOXzvVK2MY5wA" 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="_cwbbPJpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwbbMppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbbPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbbPppAEeOXzvVK2MY5wA" 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="_cwbbQZpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwbbQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbbQ5pAEeOXzvVK2MY5wA" 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="_cwbbRZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_wwhZYFwgEeOqqeCPduFc4Q/315" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbbRppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwbbS5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbbR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbbSZpAEeOXzvVK2MY5wA" 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="_cwbbS5pAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwbbTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbbTppAEeOXzvVK2MY5wA" 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="_cwbbT5pAEeOXzvVK2MY5wA" 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="_cwbbUZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwbbUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbbVJpAEeOXzvVK2MY5wA" 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="_cwbbVZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwbbY5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbbV5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbbWZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbbW5pAEeOXzvVK2MY5wA" name="value_type" ordered="false" eType="_cwbbaJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbbXZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbbX5pAEeOXzvVK2MY5wA" 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="_cwbbYZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwbbY5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwbbZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwbbZZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwbbZppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwbbZ5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwbbaJpAEeOXzvVK2MY5wA" name="Value_Type">
          <eAnnotations xmi:id="_cwbbaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwbbappAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwbba5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwbbbJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbbbZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwbbbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbbcJpAEeOXzvVK2MY5wA" 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="_cwbbcZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbbc5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbbdZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwbbbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbbdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbbeJpAEeOXzvVK2MY5wA" 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="_cwbbeppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwbbbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbbe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbbfZpAEeOXzvVK2MY5wA" 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="_cwbbf5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwbbgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbbgppAEeOXzvVK2MY5wA" 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="_cwbbg5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbbhZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbbh5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwbbf5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbbiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbbippAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwbbf5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbbi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbbjZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwbbf5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbbjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbbkJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwbbS5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbbkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbbk5pAEeOXzvVK2MY5wA" 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="_cwbblZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwbblppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbbmJpAEeOXzvVK2MY5wA" 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="_cwbbmZpAEeOXzvVK2MY5wA" 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="_cwbbm5pAEeOXzvVK2MY5wA" 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="_cwbbnZpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwbbnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbboJpAEeOXzvVK2MY5wA" 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="_cwbboZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbbo5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbbpZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwbbnZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbbpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbbqJpAEeOXzvVK2MY5wA" 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="_cwbbqppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwbbnZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbbq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbbrZpAEeOXzvVK2MY5wA" 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="_cwbbr5pAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwbbsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbbsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbbsppAEeOXzvVK2MY5wA" 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="_cwbbs5pAEeOXzvVK2MY5wA" 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="_cwbbtZpAEeOXzvVK2MY5wA" 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="_cwbbt5pAEeOXzvVK2MY5wA" 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="_cwbbuZpAEeOXzvVK2MY5wA" 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="_cwbbu5pAEeOXzvVK2MY5wA" name="procedure" eSuperTypes="_cwbbwJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbbvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbbvZpAEeOXzvVK2MY5wA" 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="_cwbbwJpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwbbwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbbwppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwbbw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbbxJpAEeOXzvVK2MY5wA" 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="_cwbbxppAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwbbx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbbyJpAEeOXzvVK2MY5wA" 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="_cwbbyppAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwbbwJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbby5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbbzJpAEeOXzvVK2MY5wA" 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="_cwbbz5pAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwbb0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbb0ZpAEeOXzvVK2MY5wA" 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="_cwbb05pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/__Hbj8FhDEeOUB9owB90Z8A/314" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbb1JpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwbb2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbb1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbb1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbb15pAEeOXzvVK2MY5wA" 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="_cwbb2ZpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwbb2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbb25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbb3JpAEeOXzvVK2MY5wA" 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="_cwbb3ZpAEeOXzvVK2MY5wA" 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="_cwbb35pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwbb4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbb4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbb4ppAEeOXzvVK2MY5wA" 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="_cwbb45pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwbb8ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbb5ZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbb55pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbb6ZpAEeOXzvVK2MY5wA" name="value_type" ordered="false" eType="_cwbb9ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbb65pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbb7ZpAEeOXzvVK2MY5wA" 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="_cwbb75pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwbb8ZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwbb8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwbb85pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwbb9JpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwbb9ZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwbb9ppAEeOXzvVK2MY5wA" name="Value_Type">
          <eAnnotations xmi:id="_cwbb95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwbb-JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwbb-ZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwbb-ppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbb-5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwbb_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbb_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbb_ppAEeOXzvVK2MY5wA" 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="_cwbb_5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbcAZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbcA5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwbb-5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbcBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbcBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbcBppAEeOXzvVK2MY5wA" 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="_cwbcCJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwbb-5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbcCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbcCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbcC5pAEeOXzvVK2MY5wA" 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="_cwbcDZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwbcDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbcD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbcEJpAEeOXzvVK2MY5wA" 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="_cwbcEZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbcE5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbcFZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwbcDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbcFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbcGJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwbcDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbcGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbcG5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwbcDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbcHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbcHppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwbb2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbcH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbcIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbcIZpAEeOXzvVK2MY5wA" 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="_cwbcI5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwbcJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbcJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbcJppAEeOXzvVK2MY5wA" 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="_cwbcJ5pAEeOXzvVK2MY5wA" 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="_cwbcKZpAEeOXzvVK2MY5wA" 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="_cwbcK5pAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwbcLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbcLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbcLppAEeOXzvVK2MY5wA" 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="_cwbcL5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbcMZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbcM5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwbcK5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbcNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbcNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbcNppAEeOXzvVK2MY5wA" 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="_cwbcOJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwbcK5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbcOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbcOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbcO5pAEeOXzvVK2MY5wA" 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="_cwbcPZpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwbcPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbcP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbcQJpAEeOXzvVK2MY5wA" 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="_cwbcQZpAEeOXzvVK2MY5wA" 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="_cwbcQ5pAEeOXzvVK2MY5wA" 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="_cwbcRZpAEeOXzvVK2MY5wA" 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="_cwbcR5pAEeOXzvVK2MY5wA" 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="_cwbcSZpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwbcTppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbcSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbcS5pAEeOXzvVK2MY5wA" 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="_cwbcTppAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwbcT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbcUJpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwbcUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbcUppAEeOXzvVK2MY5wA" 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="_cwbcVJpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwbcVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbcVppAEeOXzvVK2MY5wA" 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="_cwbcWJpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwbcTppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbcWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbcWppAEeOXzvVK2MY5wA" 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="_cwbcXZpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwbcXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbcX5pAEeOXzvVK2MY5wA" 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="_cwbcYZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_ueWjwFhBEeOUB9owB90Z8A/313" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbcYppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwbcZ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbcY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbcZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbcZZpAEeOXzvVK2MY5wA" 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="_cwbcZ5pAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwbcaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbcaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbcappAEeOXzvVK2MY5wA" 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="_cwbca5pAEeOXzvVK2MY5wA" 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="_cwbcbZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwbcbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbcb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbccJpAEeOXzvVK2MY5wA" 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="_cwbccZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwbcf5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbcc5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbcdZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbcd5pAEeOXzvVK2MY5wA" name="value_type" ordered="false" eType="_cwbchJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwbceZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbce5pAEeOXzvVK2MY5wA" 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="_cwbcfZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwbcf5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwbcgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwbcgZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwbcgppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwbcg5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwbchJpAEeOXzvVK2MY5wA" name="Value_Type">
          <eAnnotations xmi:id="_cwbchZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwbchppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwbch5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwbciJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbciZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwbcippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbci5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbcjJpAEeOXzvVK2MY5wA" 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="_cwbcjZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbcj5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwbckZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwbciZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbckppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbck5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbclJpAEeOXzvVK2MY5wA" 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="_cwbclppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwbciZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwbcl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbcmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbcmZpAEeOXzvVK2MY5wA" 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="_cwbcm5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwbcnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwbcnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwbcnppAEeOXzvVK2MY5wA" 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="_cwbcn5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwbcoZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcAcJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwbcm5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcAcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcAc5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwbcm5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcAdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcAdppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwbcm5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcAd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcAeZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwbcZ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcAeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcAe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcAfJpAEeOXzvVK2MY5wA" 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="_cwcAfppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwcAf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcAgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcAgZpAEeOXzvVK2MY5wA" 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="_cwcAgppAEeOXzvVK2MY5wA" 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="_cwcAhJpAEeOXzvVK2MY5wA" 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="_cwcAhppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwcAh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcAiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcAiZpAEeOXzvVK2MY5wA" 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="_cwcAippAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcAjJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcAjppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwcAhppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcAj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcAkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcAkZpAEeOXzvVK2MY5wA" 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="_cwcAk5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwcAhppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcAlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcAlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcAlppAEeOXzvVK2MY5wA" 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="_cwcAmJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwcAmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcAmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcAm5pAEeOXzvVK2MY5wA" 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="_cwcAnJpAEeOXzvVK2MY5wA" 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="_cwcAnppAEeOXzvVK2MY5wA" 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="_cwcAoJpAEeOXzvVK2MY5wA" 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="_cwcAoppAEeOXzvVK2MY5wA" 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="_cwcApJpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwcAqZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcApZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcApppAEeOXzvVK2MY5wA" 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="_cwcAqZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwcAqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcAq5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwcArJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcArZpAEeOXzvVK2MY5wA" 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="_cwcAr5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwcAsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcAsZpAEeOXzvVK2MY5wA" 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="_cwcAs5pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwcAqZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcAtJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcAtZpAEeOXzvVK2MY5wA" 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="_cwcAuJpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwcAuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcAuppAEeOXzvVK2MY5wA" 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="_cwcAvJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_FhTXcFhBEeOUB9owB90Z8A/312" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcAvZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwcAwppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcAvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcAv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcAwJpAEeOXzvVK2MY5wA" 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="_cwcAwppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwcAw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcAxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcAxZpAEeOXzvVK2MY5wA" 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="_cwcAxppAEeOXzvVK2MY5wA" 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="_cwcAyJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwcAyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcAyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcAy5pAEeOXzvVK2MY5wA" 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="_cwcAzJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwcA2ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcAzppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcA0JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcA0ppAEeOXzvVK2MY5wA" name="value_type" ordered="false" eType="_cwcA35pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcA1JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcA1ppAEeOXzvVK2MY5wA" 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="_cwcA2JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcA2ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwcA25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcA3JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcA3ZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwcA3ppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcA35pAEeOXzvVK2MY5wA" name="Value_Type">
          <eAnnotations xmi:id="_cwcA4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcA4ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcA4ppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwcA45pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcA5JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwcA5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcA5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcA55pAEeOXzvVK2MY5wA" 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="_cwcA6JpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcA6ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcA7JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwcA5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcA7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcA7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcA75pAEeOXzvVK2MY5wA" 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="_cwcA8ZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwcA5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcA8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcA85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcA9JpAEeOXzvVK2MY5wA" 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="_cwcA9ppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwcA95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcA-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcA-ZpAEeOXzvVK2MY5wA" 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="_cwcA-ppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcA_JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcA_ppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwcA9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcA_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcBAZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwcA9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcBAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcBBJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwcA9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcBBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcBB5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwcAwppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcBCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBCppAEeOXzvVK2MY5wA" 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="_cwcBDJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwcBDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBD5pAEeOXzvVK2MY5wA" 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="_cwcBEJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcBEppAEeOXzvVK2MY5wA" 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="_cwcBFJpAEeOXzvVK2MY5wA" 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="_cwcBFppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwcBF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBGZpAEeOXzvVK2MY5wA" 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="_cwcBGppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcBHJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcBHppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwcBFppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcBH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBIZpAEeOXzvVK2MY5wA" 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="_cwcBI5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwcBFppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcBJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBJppAEeOXzvVK2MY5wA" 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="_cwcBKJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwcBKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBK5pAEeOXzvVK2MY5wA" 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="_cwcBLJpAEeOXzvVK2MY5wA" 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="_cwcBLppAEeOXzvVK2MY5wA" 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="_cwcBMJpAEeOXzvVK2MY5wA" 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="_cwcBMppAEeOXzvVK2MY5wA" 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="_cwcBNJpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwcBOZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcBNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcBNppAEeOXzvVK2MY5wA" 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="_cwcBOZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwcBOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcBO5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwcBPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcBPZpAEeOXzvVK2MY5wA" 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="_cwcBP5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwcBQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcBQZpAEeOXzvVK2MY5wA" 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="_cwcBQ5pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwcBOZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcBRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcBRZpAEeOXzvVK2MY5wA" 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="_cwcBSJpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwcBSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcBSppAEeOXzvVK2MY5wA" 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="_cwcBTJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_fS23wFeCEeO1uoHYOW5LKA/311" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcBTZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwcBUppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcBTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBUJpAEeOXzvVK2MY5wA" 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="_cwcBUppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwcBU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBVZpAEeOXzvVK2MY5wA" 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="_cwcBVppAEeOXzvVK2MY5wA" 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="_cwcBWJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwcBWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBW5pAEeOXzvVK2MY5wA" 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="_cwcBXJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwcBappAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcBXppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcBYJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcBYppAEeOXzvVK2MY5wA" name="value_type" ordered="false" eType="_cwcBb5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcBZJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcBZppAEeOXzvVK2MY5wA" 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="_cwcBaJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcBappAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwcBa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcBbJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcBbZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwcBbppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcBb5pAEeOXzvVK2MY5wA" name="Value_Type">
          <eAnnotations xmi:id="_cwcBcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcBcZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcBcppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwcBc5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcBdJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwcBdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBd5pAEeOXzvVK2MY5wA" 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="_cwcBeJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcBeppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcBfJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwcBdJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcBfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBf5pAEeOXzvVK2MY5wA" 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="_cwcBgZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwcBdJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcBgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBhJpAEeOXzvVK2MY5wA" 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="_cwcBhppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwcBh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBiZpAEeOXzvVK2MY5wA" 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="_cwcBippAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcBjJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcBjppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwcBhppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcBj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcBkZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwcBhppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcBkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcBlJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwcBhppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcBlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcBl5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwcBUppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcBmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBmppAEeOXzvVK2MY5wA" 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="_cwcBnJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwcBnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBn5pAEeOXzvVK2MY5wA" 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="_cwcBoJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcBoppAEeOXzvVK2MY5wA" 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="_cwcBpJpAEeOXzvVK2MY5wA" 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="_cwcBpppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwcBp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBqZpAEeOXzvVK2MY5wA" 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="_cwcBqppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcBrJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcBrppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwcBpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcBr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBsZpAEeOXzvVK2MY5wA" 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="_cwcBs5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwcBpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcBtJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBtppAEeOXzvVK2MY5wA" 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="_cwcBuJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwcBuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcBuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcBu5pAEeOXzvVK2MY5wA" 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="_cwcBvJpAEeOXzvVK2MY5wA" 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="_cwcBvppAEeOXzvVK2MY5wA" 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="_cwcBwJpAEeOXzvVK2MY5wA" 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="_cwcBwppAEeOXzvVK2MY5wA" 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="_cwcBxJpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwcByZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcBxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcBxppAEeOXzvVK2MY5wA" 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="_cwcByZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwcByppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcBy5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwcBzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcBzZpAEeOXzvVK2MY5wA" 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="_cwcBz5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwcB0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcB0ZpAEeOXzvVK2MY5wA" 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="_cwcB05pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwcByZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcB1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcB1ZpAEeOXzvVK2MY5wA" 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="_cwcB2JpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwcB2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcB2ppAEeOXzvVK2MY5wA" 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="_cwcB3JpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_p1f8oFdtEeO1uoHYOW5LKA/310" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcB3ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwcB4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcB3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcB35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcB4JpAEeOXzvVK2MY5wA" 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="_cwcB4ppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwcB45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcB5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcB5ZpAEeOXzvVK2MY5wA" 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="_cwcB5ppAEeOXzvVK2MY5wA" 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="_cwcB6JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwcB6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcB6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcB65pAEeOXzvVK2MY5wA" 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="_cwcB7JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwcB-ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcB7ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcB8JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcB8ppAEeOXzvVK2MY5wA" name="value_type" ordered="false" eType="_cwcB_5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcB9JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcB9ppAEeOXzvVK2MY5wA" 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="_cwcB-JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcB-ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwcB-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcB_JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcB_ZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwcB_ppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcB_5pAEeOXzvVK2MY5wA" name="Value_Type">
          <eAnnotations xmi:id="_cwcCAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcCAZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcCAppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwcCA5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcCBJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwcCBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCB5pAEeOXzvVK2MY5wA" 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="_cwcCCJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcCCppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcCDJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwcCBJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcCDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCD5pAEeOXzvVK2MY5wA" 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="_cwcCEZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwcCBJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcCEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCFJpAEeOXzvVK2MY5wA" 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="_cwcCFppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwcCF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCGZpAEeOXzvVK2MY5wA" 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="_cwcCGppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcCHJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcCHppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwcCFppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcCH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcCIZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwcCFppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcCIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcCJJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwcCFppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcCJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcCJ5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwcB4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcCKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCKppAEeOXzvVK2MY5wA" 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="_cwcCLJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwcCLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCL5pAEeOXzvVK2MY5wA" 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="_cwcCMJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcCMppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcCNJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwcCNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCN5pAEeOXzvVK2MY5wA" 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="_cwcCOJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcCOppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcCPJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwcCNJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcCPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCP5pAEeOXzvVK2MY5wA" 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="_cwcCQZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwcCNJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcCQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCRJpAEeOXzvVK2MY5wA" 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="_cwcCRppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwcCR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCSZpAEeOXzvVK2MY5wA" 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="_cwcCSppAEeOXzvVK2MY5wA" 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="_cwcCTJpAEeOXzvVK2MY5wA" 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="_cwcCTppAEeOXzvVK2MY5wA" 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="_cwcCUJpAEeOXzvVK2MY5wA" 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="_cwcCUppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwcCV5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcCU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcCVJpAEeOXzvVK2MY5wA" 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="_cwcCV5pAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwcCWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcCWZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwcCWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcCW5pAEeOXzvVK2MY5wA" 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="_cwcCXZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwcCXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcCX5pAEeOXzvVK2MY5wA" 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="_cwcCYZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwcCV5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcCYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcCY5pAEeOXzvVK2MY5wA" 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="_cwcCZppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwcCZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcCaJpAEeOXzvVK2MY5wA" 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="_cwcCappAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_logXwFdtEeO1uoHYOW5LKA/309" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcCa5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwcCcJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcCbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCbppAEeOXzvVK2MY5wA" 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="_cwcCcJpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwcCcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCc5pAEeOXzvVK2MY5wA" 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="_cwcCdJpAEeOXzvVK2MY5wA" 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="_cwcCdppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwcCd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCeZpAEeOXzvVK2MY5wA" 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="_cwcCeppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwcCiJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcCfJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcCfppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcCgJpAEeOXzvVK2MY5wA" name="value_type" ordered="false" eType="_cwcCjZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcCgppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcChJpAEeOXzvVK2MY5wA" 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="_cwcChppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcCiJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwcCiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcCippAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcCi5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwcCjJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcCjZpAEeOXzvVK2MY5wA" name="Value_Type">
          <eAnnotations xmi:id="_cwcCjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcCj5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcCkJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwcCkZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcCkppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwcCk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcClJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcClZpAEeOXzvVK2MY5wA" 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="_cwcClppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcCmJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcCmppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwcCkppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcCm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCnZpAEeOXzvVK2MY5wA" 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="_cwcCn5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwcCkppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcCoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCoppAEeOXzvVK2MY5wA" 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="_cwcCpJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwcCpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCp5pAEeOXzvVK2MY5wA" 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="_cwcCqJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcCqppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcCrJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwcCpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcCrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcCr5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwcCpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcCsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcCsppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwcCpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcCs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcCtZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwcCcJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcCtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCuJpAEeOXzvVK2MY5wA" 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="_cwcCuppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwcCu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCvZpAEeOXzvVK2MY5wA" 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="_cwcCvppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcCwJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcCwppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwcCw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCxZpAEeOXzvVK2MY5wA" 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="_cwcCxppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcCyJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcCyppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwcCwppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcCy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcCzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcCzZpAEeOXzvVK2MY5wA" 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="_cwcCz5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwcCwppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcC0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcC0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcC0ppAEeOXzvVK2MY5wA" 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="_cwcC1JpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwcC1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcC1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcC15pAEeOXzvVK2MY5wA" 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="_cwcC2JpAEeOXzvVK2MY5wA" 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="_cwcC2ppAEeOXzvVK2MY5wA" 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="_cwcC3JpAEeOXzvVK2MY5wA" 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="_cwcC3ppAEeOXzvVK2MY5wA" 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="_cwcC4JpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwcC5ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcC4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcC4ppAEeOXzvVK2MY5wA" 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="_cwcC5ZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwcC5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcC55pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwcC6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcC6ZpAEeOXzvVK2MY5wA" 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="_cwcC65pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwcC7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcC7ZpAEeOXzvVK2MY5wA" 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="_cwcC75pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwcC5ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcC8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcC8ZpAEeOXzvVK2MY5wA" 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="_cwcC9JpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwcC9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcC9ppAEeOXzvVK2MY5wA" 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="_cwcC-JpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_aeJYIFdtEeO1uoHYOW5LKA/308" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcC-ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwcC_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcC-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcC-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcC_JpAEeOXzvVK2MY5wA" 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="_cwcC_ppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwcC_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcDAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcDAZpAEeOXzvVK2MY5wA" 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="_cwcDAppAEeOXzvVK2MY5wA" 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="_cwcDBJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwcDBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcDBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcDB5pAEeOXzvVK2MY5wA" 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="_cwcDCJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwcDFppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcDCppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcDDJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcDDppAEeOXzvVK2MY5wA" name="value_type" ordered="false" eType="_cwcDG5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcDEJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcDEppAEeOXzvVK2MY5wA" 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="_cwcDFJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcDFppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwcDF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcDGJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcDGZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwcDGppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcDG5pAEeOXzvVK2MY5wA" name="Value_Type">
          <eAnnotations xmi:id="_cwcDHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcDHZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcDHppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwcDH5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcDIJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwcDIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcDIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcDI5pAEeOXzvVK2MY5wA" 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="_cwcDJJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcDJppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcDKJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwcDIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcDKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcDKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcDK5pAEeOXzvVK2MY5wA" 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="_cwcDLZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwcDIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcDLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcDL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcDMJpAEeOXzvVK2MY5wA" 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="_cwcDMppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwcDM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcDNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcDNZpAEeOXzvVK2MY5wA" 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="_cwcDNppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcDOJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcDOppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwcDMppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcDO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcDPZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwcDMppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcDPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcDQJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwcDMppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcDQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcDQ5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwcC_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcDRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcDRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcDRppAEeOXzvVK2MY5wA" 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="_cwcDSJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwcDSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcDSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcDS5pAEeOXzvVK2MY5wA" 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="_cwcDTJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcDTppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcDUJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwcDUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcDUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcDU5pAEeOXzvVK2MY5wA" 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="_cwcDVJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcDVppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcDWJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwcDUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcDWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcDWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcDW5pAEeOXzvVK2MY5wA" 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="_cwcDXZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwcDUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcDXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcDX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcDYJpAEeOXzvVK2MY5wA" 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="_cwcDYppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwcDY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcDZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcDZZpAEeOXzvVK2MY5wA" 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="_cwcDZppAEeOXzvVK2MY5wA" 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="_cwcDaJpAEeOXzvVK2MY5wA" 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="_cwcDappAEeOXzvVK2MY5wA" 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="_cwcDbJpAEeOXzvVK2MY5wA" 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="_cwcDbppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwcDc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcDb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcDcJpAEeOXzvVK2MY5wA" 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="_cwcDc5pAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwcDdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcDdZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwcDdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcDd5pAEeOXzvVK2MY5wA" 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="_cwcDeZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwcDeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcDe5pAEeOXzvVK2MY5wA" 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="_cwcDfZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwcDc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcDfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcDf5pAEeOXzvVK2MY5wA" 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="_cwcDgppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwcDg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcDhJpAEeOXzvVK2MY5wA" 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="_cwcDhppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_0R6ooFLBEeOx7rZCF5ouIw/307" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcDh5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwcDjJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcDiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcDiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcDippAEeOXzvVK2MY5wA" 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="_cwcDjJpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwcDjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcDjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcDj5pAEeOXzvVK2MY5wA" 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="_cwcDkJpAEeOXzvVK2MY5wA" 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="_cwcDkppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwcDk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcDlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcDlZpAEeOXzvVK2MY5wA" 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="_cwcDlppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwcDpJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcDmJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcDmppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcDnJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwcDqZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcDnppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcDoJpAEeOXzvVK2MY5wA" 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="_cwcDoppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcDpJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwcDpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcDpppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcDp5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwcDqJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcDqZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwcDqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcDq5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcDrJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwcDrZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcDrppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwcDr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcDsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcDsZpAEeOXzvVK2MY5wA" 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="_cwcDsppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcDtJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcDtppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwcDrppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcDt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcngJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcngZpAEeOXzvVK2MY5wA" 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="_cwcng5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwcDrppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcnhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcnhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcnhppAEeOXzvVK2MY5wA" 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="_cwcniJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwcniZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcnippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcni5pAEeOXzvVK2MY5wA" 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="_cwcnjJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcnjppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcnkJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwcniJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcnkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcnk5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwcniJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcnlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcnlppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwcniJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcnl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcnmZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwcDjJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcnmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcnm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcnnJpAEeOXzvVK2MY5wA" 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="_cwcnnppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwcnn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcnoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcnoZpAEeOXzvVK2MY5wA" 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="_cwcnoppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcnpJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcnpppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwcnp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcnqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcnqZpAEeOXzvVK2MY5wA" 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="_cwcnqppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcnrJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcnrppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwcnpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcnr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcnsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcnsZpAEeOXzvVK2MY5wA" 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="_cwcns5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwcnpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcntJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcntZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcntppAEeOXzvVK2MY5wA" 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="_cwcnuJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwcnuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcnuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcnu5pAEeOXzvVK2MY5wA" 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="_cwcnvJpAEeOXzvVK2MY5wA" 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="_cwcnvppAEeOXzvVK2MY5wA" 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="_cwcnwJpAEeOXzvVK2MY5wA" 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="_cwcnwppAEeOXzvVK2MY5wA" 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="_cwcnxJpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwcnyZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcnxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcnxppAEeOXzvVK2MY5wA" 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="_cwcnyZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwcnyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcny5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwcnzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcnzZpAEeOXzvVK2MY5wA" 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="_cwcnz5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwcn0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcn0ZpAEeOXzvVK2MY5wA" 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="_cwcn05pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwcnyZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcn1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcn1ZpAEeOXzvVK2MY5wA" 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="_cwcn2JpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwcn2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcn2ppAEeOXzvVK2MY5wA" 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="_cwcn3JpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_oiZP0FKoEeOx7rZCF5ouIw/306" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcn3ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwcn4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcn3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcn35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcn4JpAEeOXzvVK2MY5wA" 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="_cwcn4ppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwcn45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcn5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcn5ZpAEeOXzvVK2MY5wA" 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="_cwcn5ppAEeOXzvVK2MY5wA" 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="_cwcn6JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwcn6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcn6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcn65pAEeOXzvVK2MY5wA" 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="_cwcn7JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwcn-ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcn7ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcn8JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcn8ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwcn_5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcn9JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcn9ppAEeOXzvVK2MY5wA" 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="_cwcn-JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcn-ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwcn-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcn_JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcn_ZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwcn_ppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcn_5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwcoAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcoAZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcoAppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwcoA5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcoBJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwcoBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcoBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcoB5pAEeOXzvVK2MY5wA" 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="_cwcoCJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcoCppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcoDJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwcoBJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcoDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcoDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcoD5pAEeOXzvVK2MY5wA" 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="_cwcoEZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwcoBJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcoEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcoE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcoFJpAEeOXzvVK2MY5wA" 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="_cwcoFppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwcoF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcoGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcoGZpAEeOXzvVK2MY5wA" 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="_cwcoGppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcoHJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcoHppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwcoFppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcoH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcoIZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwcoFppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcoIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcoJJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwcoFppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcoJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcoJ5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwcn4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcoKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcoKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcoKppAEeOXzvVK2MY5wA" 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="_cwcoLJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwcoLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcoLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcoL5pAEeOXzvVK2MY5wA" 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="_cwcoMJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcoMppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcoNJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwcoNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcoNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcoN5pAEeOXzvVK2MY5wA" 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="_cwcoOJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcoOppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcoPJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwcoNJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcoPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcoPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcoP5pAEeOXzvVK2MY5wA" 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="_cwcoQZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwcoNJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcoQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcoQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcoRJpAEeOXzvVK2MY5wA" 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="_cwcoRppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwcoR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcoSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcoSZpAEeOXzvVK2MY5wA" 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="_cwcoSppAEeOXzvVK2MY5wA" 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="_cwcoTJpAEeOXzvVK2MY5wA" 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="_cwcoTppAEeOXzvVK2MY5wA" 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="_cwcoUJpAEeOXzvVK2MY5wA" 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="_cwcoUppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwcoV5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcoU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcoVJpAEeOXzvVK2MY5wA" 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="_cwcoV5pAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwcoWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcoWZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwcoWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcoW5pAEeOXzvVK2MY5wA" 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="_cwcoXZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwcoXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcoX5pAEeOXzvVK2MY5wA" 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="_cwcoYZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwcoV5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcoYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcoY5pAEeOXzvVK2MY5wA" 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="_cwcoZppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwcoZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcoaJpAEeOXzvVK2MY5wA" 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="_cwcoappAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_cdsH0FKoEeOx7rZCF5ouIw/305" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcoa5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwcocJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcobJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcobZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcobppAEeOXzvVK2MY5wA" 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="_cwcocJpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwcocZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcocppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcoc5pAEeOXzvVK2MY5wA" 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="_cwcodJpAEeOXzvVK2MY5wA" 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="_cwcodppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwcod5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcoeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcoeZpAEeOXzvVK2MY5wA" 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="_cwcoeppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwcoiJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcofJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcofppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcogJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwcojZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcogppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcohJpAEeOXzvVK2MY5wA" 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="_cwcohppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcoiJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwcoiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcoippAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcoi5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwcojJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcojZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwcojppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcoj5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcokJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwcokZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcokppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwcok5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcolJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcolZpAEeOXzvVK2MY5wA" 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="_cwcolppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcomJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcomppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwcokppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcom5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwconJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwconZpAEeOXzvVK2MY5wA" 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="_cwcon5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwcokppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcooJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcooZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcooppAEeOXzvVK2MY5wA" 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="_cwcopJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwcopZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcopppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcop5pAEeOXzvVK2MY5wA" 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="_cwcoqJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcoqppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcorJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwcopJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcorZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcor5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwcopJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcosJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcosppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwcopJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcos5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcotZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwcocJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcotppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcot5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcouJpAEeOXzvVK2MY5wA" 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="_cwcouppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwcou5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcovJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcovZpAEeOXzvVK2MY5wA" 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="_cwcovppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcowJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcowppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwcow5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcoxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcoxZpAEeOXzvVK2MY5wA" 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="_cwcoxppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcoyJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcoyppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwcowppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcoy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcozJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcozZpAEeOXzvVK2MY5wA" 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="_cwcoz5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwcowppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwco0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwco0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwco0ppAEeOXzvVK2MY5wA" 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="_cwco1JpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwco1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwco1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwco15pAEeOXzvVK2MY5wA" 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="_cwco2JpAEeOXzvVK2MY5wA" 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="_cwco2ppAEeOXzvVK2MY5wA" 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="_cwco3JpAEeOXzvVK2MY5wA" 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="_cwco3ppAEeOXzvVK2MY5wA" 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="_cwco4JpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwco5ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwco4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwco4ppAEeOXzvVK2MY5wA" 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="_cwco5ZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwco5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwco55pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwco6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwco6ZpAEeOXzvVK2MY5wA" 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="_cwco65pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwco7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwco7ZpAEeOXzvVK2MY5wA" 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="_cwco75pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwco5ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwco8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwco8ZpAEeOXzvVK2MY5wA" 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="_cwco9JpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwco9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwco9ppAEeOXzvVK2MY5wA" 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="_cwco-JpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_XnEXIFKoEeOx7rZCF5ouIw/304" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwco-ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwco_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwco-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwco-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwco_JpAEeOXzvVK2MY5wA" 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="_cwco_ppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwco_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcpAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcpAZpAEeOXzvVK2MY5wA" 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="_cwcpAppAEeOXzvVK2MY5wA" 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="_cwcpBJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwcpBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcpBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcpB5pAEeOXzvVK2MY5wA" 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="_cwcpCJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwcpFppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcpCppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcpDJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcpDppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwcpG5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcpEJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcpEppAEeOXzvVK2MY5wA" 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="_cwcpFJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcpFppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwcpF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcpGJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcpGZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwcpGppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcpG5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwcpHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcpHZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcpHppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwcpH5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcpIJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwcpIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcpIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcpI5pAEeOXzvVK2MY5wA" 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="_cwcpJJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcpJppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcpKJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwcpIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcpKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcpKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcpK5pAEeOXzvVK2MY5wA" 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="_cwcpLZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwcpIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcpLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcpL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcpMJpAEeOXzvVK2MY5wA" 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="_cwcpMppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwcpM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcpNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcpNZpAEeOXzvVK2MY5wA" 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="_cwcpNppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcpOJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcpOppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwcpMppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcpO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcpPZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwcpMppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcpPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcpQJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwcpMppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcpQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcpQ5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwco_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcpRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcpRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcpRppAEeOXzvVK2MY5wA" 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="_cwcpSJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwcpSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcpSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcpS5pAEeOXzvVK2MY5wA" 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="_cwcpTJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcpTppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcpUJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwcpUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcpUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcpU5pAEeOXzvVK2MY5wA" 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="_cwcpVJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcpVppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcpWJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwcpUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcpWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcpWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcpW5pAEeOXzvVK2MY5wA" 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="_cwcpXZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwcpUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcpXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcpX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcpYJpAEeOXzvVK2MY5wA" 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="_cwcpYppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwcpY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcpZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcpZZpAEeOXzvVK2MY5wA" 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="_cwcpZppAEeOXzvVK2MY5wA" 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="_cwcpaJpAEeOXzvVK2MY5wA" 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="_cwcpappAEeOXzvVK2MY5wA" 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="_cwcpbJpAEeOXzvVK2MY5wA" 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="_cwcpbppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwcpc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcpb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcpcJpAEeOXzvVK2MY5wA" 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="_cwcpc5pAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwcpdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcpdZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwcpdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcpd5pAEeOXzvVK2MY5wA" 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="_cwcpeZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwcpeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcpe5pAEeOXzvVK2MY5wA" 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="_cwcpfZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwcpc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcpfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcpf5pAEeOXzvVK2MY5wA" 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="_cwcpgppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwcpg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcphJpAEeOXzvVK2MY5wA" 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="_cwcphppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_SbYVYFKoEeOx7rZCF5ouIw/303" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcph5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwcpjJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcpiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcpiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcpippAEeOXzvVK2MY5wA" 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="_cwcpjJpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwcpjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcpjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcpj5pAEeOXzvVK2MY5wA" 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="_cwcpkJpAEeOXzvVK2MY5wA" 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="_cwcpkppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwcpk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcplJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcplZpAEeOXzvVK2MY5wA" 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="_cwcplppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwcppJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcpmJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcpmppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcpnJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwcpqZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcpnppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcpoJpAEeOXzvVK2MY5wA" 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="_cwcpoppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcppJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwcppZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcppppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcpp5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwcpqJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcpqZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwcpqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcpq5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcprJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwcprZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcprppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwcpr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcpsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcpsZpAEeOXzvVK2MY5wA" 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="_cwcpsppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcptJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcptppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwcprppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcpt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcpuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcpuZpAEeOXzvVK2MY5wA" 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="_cwcpu5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwcprppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcpvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcpvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcpvppAEeOXzvVK2MY5wA" 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="_cwcpwJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwcpwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcpwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcpw5pAEeOXzvVK2MY5wA" 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="_cwcpxJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcpxppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcpyJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwcpwJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcpyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcpy5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwcpwJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcpzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcpzppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwcpwJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcpz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcp0ZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwcpjJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcp0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcp05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcp1JpAEeOXzvVK2MY5wA" 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="_cwcp1ppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwcp15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcp2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcp2ZpAEeOXzvVK2MY5wA" 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="_cwcp2ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcp3JpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcp3ppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwcp35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcp4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcp4ZpAEeOXzvVK2MY5wA" 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="_cwcp4ppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcp5JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcp5ppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwcp3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcp55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcp6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcp6ZpAEeOXzvVK2MY5wA" 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="_cwcp65pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwcp3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcp7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcp7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcp7ppAEeOXzvVK2MY5wA" 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="_cwcp8JpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwcp8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcp8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcp85pAEeOXzvVK2MY5wA" 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="_cwcp9JpAEeOXzvVK2MY5wA" 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="_cwcp9ppAEeOXzvVK2MY5wA" 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="_cwcp-JpAEeOXzvVK2MY5wA" 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="_cwcp-ppAEeOXzvVK2MY5wA" 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="_cwcp_JpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwcqAZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcp_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcp_ppAEeOXzvVK2MY5wA" 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="_cwcqAZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwcqAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcqA5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwcqBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcqBZpAEeOXzvVK2MY5wA" 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="_cwcqB5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwcqCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcqCZpAEeOXzvVK2MY5wA" 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="_cwcqC5pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwcqAZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcqDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcqDZpAEeOXzvVK2MY5wA" 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="_cwcqEJpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwcqEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcqEppAEeOXzvVK2MY5wA" 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="_cwcqFJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_MepRMFKoEeOx7rZCF5ouIw/302" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcqFZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwcqGppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcqFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcqF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcqGJpAEeOXzvVK2MY5wA" 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="_cwcqGppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwcqG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcqHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcqHZpAEeOXzvVK2MY5wA" 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="_cwcqHppAEeOXzvVK2MY5wA" 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="_cwcqIJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwcqIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcqIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcqI5pAEeOXzvVK2MY5wA" 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="_cwcqJJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwcqMppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcqJppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcqKJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcqKppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwcqN5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcqLJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcqLppAEeOXzvVK2MY5wA" 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="_cwcqMJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcqMppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwcqM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcqNJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcqNZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwcqNppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwcqN5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwcqOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwcqOZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwcqOppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwcqO5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcqPJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwcqPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcqPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcqP5pAEeOXzvVK2MY5wA" 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="_cwcqQJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcqQppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcqRJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwcqPJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcqRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcqRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcqR5pAEeOXzvVK2MY5wA" 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="_cwcqSZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwcqPJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcqSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcqS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcqTJpAEeOXzvVK2MY5wA" 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="_cwcqTppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwcqT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcqUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcqUZpAEeOXzvVK2MY5wA" 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="_cwcqUppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcqVJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcqVppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwcqTppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcqV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcqWZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwcqTppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcqWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcqXJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwcqTppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcqXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcqX5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwcqGppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcqYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcqYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcqYppAEeOXzvVK2MY5wA" 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="_cwcqZJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwcqZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcqZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcqZ5pAEeOXzvVK2MY5wA" 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="_cwcqaJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwcqappAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcqbJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwcqbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcqbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcqb5pAEeOXzvVK2MY5wA" 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="_cwcqcJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcqcppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcqdJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwcqbJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcqdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcqdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcqd5pAEeOXzvVK2MY5wA" 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="_cwcqeZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwcqbJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcqeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcqe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcqfJpAEeOXzvVK2MY5wA" 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="_cwcqfppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwcqf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcqgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcqgZpAEeOXzvVK2MY5wA" 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="_cwcqgppAEeOXzvVK2MY5wA" 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="_cwcqhJpAEeOXzvVK2MY5wA" 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="_cwcqhppAEeOXzvVK2MY5wA" 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="_cwcqiJpAEeOXzvVK2MY5wA" 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="_cwcqippAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwcqj5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcqi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcqjJpAEeOXzvVK2MY5wA" 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="_cwcqj5pAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwcqkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcqkZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwcqkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcqk5pAEeOXzvVK2MY5wA" 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="_cwcqlZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwcqlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcql5pAEeOXzvVK2MY5wA" 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="_cwcqmZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwcqj5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcqmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcqm5pAEeOXzvVK2MY5wA" 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="_cwcqnppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwcqn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwcqoJpAEeOXzvVK2MY5wA" 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="_cwcqoppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_1xMB0FKnEeOx7rZCF5ouIw/301" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwcqo5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwcqqJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwcqpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcqpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcqpppAEeOXzvVK2MY5wA" 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="_cwcqqJpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwcqqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcqqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcqq5pAEeOXzvVK2MY5wA" 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="_cwcqrJpAEeOXzvVK2MY5wA" 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="_cwcqrppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwcqr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwcqsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwcqsZpAEeOXzvVK2MY5wA" 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="_cwcqsppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwdOnZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdOkZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdOk5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdOlZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwdOoppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdOl5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdOmZpAEeOXzvVK2MY5wA" 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="_cwdOm5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwdOnZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwdOnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwdOn5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwdOoJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwdOoZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwdOoppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwdOo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwdOpJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwdOpZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwdOpppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdOp5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwdOqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdOqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdOqppAEeOXzvVK2MY5wA" 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="_cwdOq5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdOrZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdOr5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwdOp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdOsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdOsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdOsppAEeOXzvVK2MY5wA" 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="_cwdOtJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwdOp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdOtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdOtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdOt5pAEeOXzvVK2MY5wA" 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="_cwdOuZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwdOuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdOu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdOvJpAEeOXzvVK2MY5wA" 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="_cwdOvZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdOv5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdOwZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwdOuZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdOwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdOxJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwdOuZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdOxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdOx5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwdOuZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdOyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdOyppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwcqqJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdOy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdOzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdOzZpAEeOXzvVK2MY5wA" 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="_cwdOz5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwdO0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdO0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdO0ppAEeOXzvVK2MY5wA" 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="_cwdO05pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdO1ZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdO15pAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwdO2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdO2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdO2ppAEeOXzvVK2MY5wA" 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="_cwdO25pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdO3ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdO35pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwdO15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdO4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdO4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdO4ppAEeOXzvVK2MY5wA" 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="_cwdO5JpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwdO15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdO5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdO5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdO55pAEeOXzvVK2MY5wA" 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="_cwdO6ZpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwdO6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdO65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdO7JpAEeOXzvVK2MY5wA" 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="_cwdO7ZpAEeOXzvVK2MY5wA" 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="_cwdO75pAEeOXzvVK2MY5wA" 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="_cwdO8ZpAEeOXzvVK2MY5wA" 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="_cwdO85pAEeOXzvVK2MY5wA" 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="_cwdO9ZpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwdO-ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdO9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdO95pAEeOXzvVK2MY5wA" 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="_cwdO-ppAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwdO-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdO_JpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwdO_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdO_ppAEeOXzvVK2MY5wA" 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="_cwdPAJpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwdPAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdPAppAEeOXzvVK2MY5wA" 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="_cwdPBJpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwdO-ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdPBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdPBppAEeOXzvVK2MY5wA" 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="_cwdPCZpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwdPCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdPC5pAEeOXzvVK2MY5wA" 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="_cwdPDZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_0D-5IFKnEeOx7rZCF5ouIw/300" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdPDppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwdPE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdPD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdPEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdPEZpAEeOXzvVK2MY5wA" 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="_cwdPE5pAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwdPFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdPFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdPFppAEeOXzvVK2MY5wA" 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="_cwdPF5pAEeOXzvVK2MY5wA" 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="_cwdPGZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwdPGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdPG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdPHJpAEeOXzvVK2MY5wA" 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="_cwdPHZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwdPK5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdPH5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdPIZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdPI5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwdPMJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdPJZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdPJ5pAEeOXzvVK2MY5wA" 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="_cwdPKZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwdPK5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwdPLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwdPLZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwdPLppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwdPL5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwdPMJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwdPMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwdPMppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwdPM5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwdPNJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdPNZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwdPNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdPN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdPOJpAEeOXzvVK2MY5wA" 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="_cwdPOZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdPO5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdPPZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwdPNZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdPPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdPP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdPQJpAEeOXzvVK2MY5wA" 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="_cwdPQppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwdPNZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdPQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdPRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdPRZpAEeOXzvVK2MY5wA" 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="_cwdPR5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwdPSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdPSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdPSppAEeOXzvVK2MY5wA" 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="_cwdPS5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdPTZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdPT5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwdPR5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdPUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdPUppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwdPR5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdPU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdPVZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwdPR5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdPVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdPWJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwdPE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdPWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdPWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdPW5pAEeOXzvVK2MY5wA" 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="_cwdPXZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwdPXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdPX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdPYJpAEeOXzvVK2MY5wA" 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="_cwdPYZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdPY5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdPZZpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwdPZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdPZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdPaJpAEeOXzvVK2MY5wA" 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="_cwdPaZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdPa5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdPbZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwdPZZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdPbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdPb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdPcJpAEeOXzvVK2MY5wA" 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="_cwdPcppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwdPZZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdPc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdPdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdPdZpAEeOXzvVK2MY5wA" 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="_cwdPd5pAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwdPeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdPeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdPeppAEeOXzvVK2MY5wA" 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="_cwdPe5pAEeOXzvVK2MY5wA" 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="_cwdPfZpAEeOXzvVK2MY5wA" 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="_cwdPf5pAEeOXzvVK2MY5wA" 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="_cwdPgZpAEeOXzvVK2MY5wA" 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="_cwdPg5pAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwdPiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdPhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdPhZpAEeOXzvVK2MY5wA" 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="_cwdPiJpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwdPiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdPippAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwdPi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdPjJpAEeOXzvVK2MY5wA" 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="_cwdPjppAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwdPj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdPkJpAEeOXzvVK2MY5wA" 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="_cwdPkppAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwdPiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdPk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdPlJpAEeOXzvVK2MY5wA" 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="_cwdPl5pAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwdPmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdPmZpAEeOXzvVK2MY5wA" 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="_cwdPm5pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_oZqnEFKnEeOx7rZCF5ouIw/299" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdPnJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwdPoZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdPnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdPnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdPn5pAEeOXzvVK2MY5wA" 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="_cwdPoZpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwdPoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdPo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdPpJpAEeOXzvVK2MY5wA" 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="_cwdPpZpAEeOXzvVK2MY5wA" 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="_cwdPp5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwdPqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdPqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdPqppAEeOXzvVK2MY5wA" 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="_cwdPq5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwdPuZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdPrZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdPr5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdPsZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwdPvppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdPs5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdPtZpAEeOXzvVK2MY5wA" 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="_cwdPt5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwdPuZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwdPuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwdPu5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwdPvJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwdPvZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwdPvppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwdPv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwdPwJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwdPwZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwdPwppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdPw5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwdPxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdPxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdPxppAEeOXzvVK2MY5wA" 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="_cwdPx5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdPyZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdPy5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwdPw5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdPzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdPzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdPzppAEeOXzvVK2MY5wA" 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="_cwdP0JpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwdPw5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdP0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdP0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdP05pAEeOXzvVK2MY5wA" 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="_cwdP1ZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwdP1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdP15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdP2JpAEeOXzvVK2MY5wA" 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="_cwdP2ZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdP25pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdP3ZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwdP1ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdP3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdP4JpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwdP1ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdP4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdP45pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwdP1ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdP5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdP5ppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwdPoZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdP55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdP6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdP6ZpAEeOXzvVK2MY5wA" 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="_cwdP65pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwdP7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdP7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdP7ppAEeOXzvVK2MY5wA" 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="_cwdP75pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdP8ZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdP85pAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwdP9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdP9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdP9ppAEeOXzvVK2MY5wA" 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="_cwdP95pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdP-ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdP-5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwdP85pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdP_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdP_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdP_ppAEeOXzvVK2MY5wA" 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="_cwdQAJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwdP85pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQA5pAEeOXzvVK2MY5wA" 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="_cwdQBZpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwdQBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQCJpAEeOXzvVK2MY5wA" 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="_cwdQCZpAEeOXzvVK2MY5wA" 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="_cwdQC5pAEeOXzvVK2MY5wA" 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="_cwdQDZpAEeOXzvVK2MY5wA" 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="_cwdQD5pAEeOXzvVK2MY5wA" 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="_cwdQEZpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwdQFppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdQE5pAEeOXzvVK2MY5wA" 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="_cwdQFppAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwdQF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdQGJpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwdQGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdQGppAEeOXzvVK2MY5wA" 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="_cwdQHJpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwdQHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdQHppAEeOXzvVK2MY5wA" 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="_cwdQIJpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwdQFppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdQIppAEeOXzvVK2MY5wA" 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="_cwdQJZpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwdQJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdQJ5pAEeOXzvVK2MY5wA" 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="_cwdQKZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_PwZLQFKnEeOx7rZCF5ouIw/298" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdQKppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwdQL5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQLZpAEeOXzvVK2MY5wA" 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="_cwdQL5pAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwdQMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQMppAEeOXzvVK2MY5wA" 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="_cwdQM5pAEeOXzvVK2MY5wA" 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="_cwdQNZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwdQNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQOJpAEeOXzvVK2MY5wA" 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="_cwdQOZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwdQR5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdQO5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdQPZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdQP5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwdQTJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdQQZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdQQ5pAEeOXzvVK2MY5wA" 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="_cwdQRZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwdQR5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwdQSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwdQSZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwdQSppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwdQS5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwdQTJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwdQTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwdQTppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwdQT5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwdQUJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdQUZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwdQUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQVJpAEeOXzvVK2MY5wA" 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="_cwdQVZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdQV5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdQWZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwdQUZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQXJpAEeOXzvVK2MY5wA" 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="_cwdQXppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwdQUZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQYZpAEeOXzvVK2MY5wA" 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="_cwdQY5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwdQZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQZppAEeOXzvVK2MY5wA" 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="_cwdQZ5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdQaZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdQa5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwdQY5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdQbppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwdQY5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdQcZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwdQY5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdQdJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwdQL5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQd5pAEeOXzvVK2MY5wA" 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="_cwdQeZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwdQeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQfJpAEeOXzvVK2MY5wA" 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="_cwdQfZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdQf5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdQgZpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwdQgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQhJpAEeOXzvVK2MY5wA" 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="_cwdQhZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdQh5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdQiZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwdQgZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQjJpAEeOXzvVK2MY5wA" 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="_cwdQjppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwdQgZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQkZpAEeOXzvVK2MY5wA" 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="_cwdQk5pAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwdQlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQlppAEeOXzvVK2MY5wA" 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="_cwdQl5pAEeOXzvVK2MY5wA" 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="_cwdQmZpAEeOXzvVK2MY5wA" 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="_cwdQm5pAEeOXzvVK2MY5wA" 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="_cwdQnZpAEeOXzvVK2MY5wA" 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="_cwdQn5pAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwdQpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdQoZpAEeOXzvVK2MY5wA" 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="_cwdQpJpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwdQpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdQpppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwdQp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdQqJpAEeOXzvVK2MY5wA" 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="_cwdQqppAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwdQq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdQrJpAEeOXzvVK2MY5wA" 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="_cwdQrppAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwdQpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdQsJpAEeOXzvVK2MY5wA" 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="_cwdQs5pAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwdQtJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdQtZpAEeOXzvVK2MY5wA" 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="_cwdQt5pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_58L4EFKmEeOx7rZCF5ouIw/297" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdQuJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwdQvZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQu5pAEeOXzvVK2MY5wA" 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="_cwdQvZpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwdQvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQwJpAEeOXzvVK2MY5wA" 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="_cwdQwZpAEeOXzvVK2MY5wA" 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="_cwdQw5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwdQxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQxppAEeOXzvVK2MY5wA" 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="_cwdQx5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwdQ1ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdQyZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdQy5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdQzZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwdQ2ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdQz5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdQ0ZpAEeOXzvVK2MY5wA" 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="_cwdQ05pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwdQ1ZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwdQ1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwdQ15pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwdQ2JpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwdQ2ZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwdQ2ppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwdQ25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwdQ3JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwdQ3ZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwdQ3ppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdQ35pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwdQ4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQ4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQ4ppAEeOXzvVK2MY5wA" 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="_cwdQ45pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdQ5ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdQ55pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwdQ35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQ6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQ6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQ6ppAEeOXzvVK2MY5wA" 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="_cwdQ7JpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwdQ35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQ7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQ7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQ75pAEeOXzvVK2MY5wA" 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="_cwdQ8ZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwdQ8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdQ85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdQ9JpAEeOXzvVK2MY5wA" 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="_cwdQ9ZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdQ95pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdQ-ZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwdQ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQ-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdQ_JpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwdQ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdQ_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdQ_5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwdQ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdRAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdRAppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwdQvZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdRA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdRBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdRBZpAEeOXzvVK2MY5wA" 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="_cwdRB5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwdRCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdRCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdRCppAEeOXzvVK2MY5wA" 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="_cwdRC5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdRDZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdRD5pAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwdREJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdREZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdREppAEeOXzvVK2MY5wA" 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="_cwdRE5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdRFZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdRF5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwdRD5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdRGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdRGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdRGppAEeOXzvVK2MY5wA" 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="_cwdRHJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwdRD5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdRHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdRHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdRH5pAEeOXzvVK2MY5wA" 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="_cwdRIZpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwdRIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdRI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdRJJpAEeOXzvVK2MY5wA" 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="_cwdRJZpAEeOXzvVK2MY5wA" 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="_cwdRJ5pAEeOXzvVK2MY5wA" 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="_cwdRKZpAEeOXzvVK2MY5wA" 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="_cwdRK5pAEeOXzvVK2MY5wA" 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="_cwdRLZpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwdRMppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdRLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdRL5pAEeOXzvVK2MY5wA" 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="_cwdRMppAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwdRM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdRNJpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwdRNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdRNppAEeOXzvVK2MY5wA" 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="_cwdROJpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwdROZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdROppAEeOXzvVK2MY5wA" 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="_cwdRPJpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwdRMppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdRPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdRPppAEeOXzvVK2MY5wA" 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="_cwdRQZpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwdRQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdRQ5pAEeOXzvVK2MY5wA" 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="_cwdRRZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_iVmQAFKgEeOx7rZCF5ouIw/296" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdRRppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwdRS5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdRR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdRSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdRSZpAEeOXzvVK2MY5wA" 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="_cwdRS5pAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwdRTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdRTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdRTppAEeOXzvVK2MY5wA" 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="_cwdRT5pAEeOXzvVK2MY5wA" 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="_cwdRUZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwdRUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdRU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdRVJpAEeOXzvVK2MY5wA" 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="_cwdRVZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwdRY5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdRV5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdRWZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdRW5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwdRaJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdRXZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdRX5pAEeOXzvVK2MY5wA" 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="_cwdRYZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwdRY5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwdRZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwdRZZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwdRZppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwdRZ5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwdRaJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwdRaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwdRappAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwdRa5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwdRbJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdRbZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwdRbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdRb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdRcJpAEeOXzvVK2MY5wA" 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="_cwdRcZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdRc5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdRdZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwdRbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdRdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdRd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdReJpAEeOXzvVK2MY5wA" 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="_cwdReppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwdRbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdRe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdRfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdRfZpAEeOXzvVK2MY5wA" 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="_cwdRf5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwdRgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdRgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdRgppAEeOXzvVK2MY5wA" 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="_cwdRg5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdRhZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdRh5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwdRf5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdRiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdRippAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwdRf5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdRi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdRjZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwdRf5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdRjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdRkJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwdRS5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdRkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdRkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdRk5pAEeOXzvVK2MY5wA" 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="_cwdRlZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwdRlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdRl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdRmJpAEeOXzvVK2MY5wA" 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="_cwdRmZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwdRm5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdRnZpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwdRnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdRn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdRoJpAEeOXzvVK2MY5wA" 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="_cwdRoZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdRo5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdRpZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwdRnZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdRpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdRp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdRqJpAEeOXzvVK2MY5wA" 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="_cwdRqppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwdRnZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdRq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdRrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdRrZpAEeOXzvVK2MY5wA" 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="_cwdRr5pAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwdRsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwdRsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwdRsppAEeOXzvVK2MY5wA" 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="_cwdRs5pAEeOXzvVK2MY5wA" 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="_cwdRtZpAEeOXzvVK2MY5wA" 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="_cwdRt5pAEeOXzvVK2MY5wA" 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="_cwdRuZpAEeOXzvVK2MY5wA" 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="_cwdRu5pAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwdRwJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwdRvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdRvZpAEeOXzvVK2MY5wA" 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="_cwdRwJpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwdRwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwdRwppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwdRw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdRxJpAEeOXzvVK2MY5wA" 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="_cwdRxppAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwdRx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwdRyJpAEeOXzvVK2MY5wA" 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="_cwd1oZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwdRwJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd1oppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd1o5pAEeOXzvVK2MY5wA" 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="_cwd1pppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwd1p5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd1qJpAEeOXzvVK2MY5wA" 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="_cwd1qppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_LKZ7wFKgEeOx7rZCF5ouIw/295" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd1q5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwd1sJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd1rJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd1rZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd1rppAEeOXzvVK2MY5wA" 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="_cwd1sJpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwd1sZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd1sppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd1s5pAEeOXzvVK2MY5wA" 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="_cwd1tJpAEeOXzvVK2MY5wA" 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="_cwd1tppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwd1t5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd1uJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd1uZpAEeOXzvVK2MY5wA" 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="_cwd1uppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwd1yJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd1vJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd1vppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd1wJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwd1zZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd1wppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd1xJpAEeOXzvVK2MY5wA" 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="_cwd1xppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwd1yJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwd1yZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwd1yppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwd1y5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwd1zJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwd1zZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwd1zppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwd1z5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwd10JpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwd10ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd10ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwd105pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd11JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd11ZpAEeOXzvVK2MY5wA" 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="_cwd11ppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd12JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd12ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwd10ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd125pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd13JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd13ZpAEeOXzvVK2MY5wA" 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="_cwd135pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwd10ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd14JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd14ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd14ppAEeOXzvVK2MY5wA" 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="_cwd15JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwd15ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd15ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd155pAEeOXzvVK2MY5wA" 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="_cwd16JpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd16ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd17JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwd15JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd17ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd175pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwd15JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd18JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd18ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwd15JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd185pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd19ZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwd1sJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd19ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd195pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd1-JpAEeOXzvVK2MY5wA" 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="_cwd1-ppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwd1-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd1_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd1_ZpAEeOXzvVK2MY5wA" 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="_cwd1_ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd2AJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd2AppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwd2A5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2BJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2BZpAEeOXzvVK2MY5wA" 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="_cwd2BppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd2CJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd2CppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwd2AppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd2C5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2DJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2DZpAEeOXzvVK2MY5wA" 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="_cwd2D5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwd2AppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd2EJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2EZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2EppAEeOXzvVK2MY5wA" 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="_cwd2FJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwd2FZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2FppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2F5pAEeOXzvVK2MY5wA" 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="_cwd2GJpAEeOXzvVK2MY5wA" 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="_cwd2GppAEeOXzvVK2MY5wA" 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="_cwd2HJpAEeOXzvVK2MY5wA" 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="_cwd2HppAEeOXzvVK2MY5wA" 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="_cwd2IJpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwd2JZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd2IZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd2IppAEeOXzvVK2MY5wA" 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="_cwd2JZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwd2JppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd2J5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwd2KJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd2KZpAEeOXzvVK2MY5wA" 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="_cwd2K5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwd2LJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd2LZpAEeOXzvVK2MY5wA" 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="_cwd2L5pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwd2JZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd2MJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd2MZpAEeOXzvVK2MY5wA" 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="_cwd2NJpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwd2NZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd2NppAEeOXzvVK2MY5wA" 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="_cwd2OJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_Y5BdUFKfEeOx7rZCF5ouIw/294" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd2OZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwd2PppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd2OppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2O5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2PJpAEeOXzvVK2MY5wA" 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="_cwd2PppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwd2P5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2QJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2QZpAEeOXzvVK2MY5wA" 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="_cwd2QppAEeOXzvVK2MY5wA" 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="_cwd2RJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwd2RZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2RppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2R5pAEeOXzvVK2MY5wA" 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="_cwd2SJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwd2VppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd2SppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd2TJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd2TppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwd2W5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd2UJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd2UppAEeOXzvVK2MY5wA" 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="_cwd2VJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwd2VppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwd2V5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwd2WJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwd2WZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwd2WppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwd2W5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwd2XJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwd2XZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwd2XppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwd2X5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd2YJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwd2YZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2YppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2Y5pAEeOXzvVK2MY5wA" 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="_cwd2ZJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd2ZppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd2aJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwd2YJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd2aZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2appAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2a5pAEeOXzvVK2MY5wA" 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="_cwd2bZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwd2YJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd2bppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2b5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2cJpAEeOXzvVK2MY5wA" 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="_cwd2cppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwd2c5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2dJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2dZpAEeOXzvVK2MY5wA" 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="_cwd2dppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd2eJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd2eppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwd2cppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd2e5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd2fZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwd2cppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd2fppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd2gJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwd2cppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd2gZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd2g5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwd2PppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd2hJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2hZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2hppAEeOXzvVK2MY5wA" 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="_cwd2iJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwd2iZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2ippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2i5pAEeOXzvVK2MY5wA" 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="_cwd2jJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd2jppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd2kJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwd2kZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2kppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2k5pAEeOXzvVK2MY5wA" 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="_cwd2lJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd2lppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd2mJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwd2kJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd2mZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2mppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2m5pAEeOXzvVK2MY5wA" 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="_cwd2nZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwd2kJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd2nppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2n5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2oJpAEeOXzvVK2MY5wA" 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="_cwd2oppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwd2o5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2pJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2pZpAEeOXzvVK2MY5wA" 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="_cwd2pppAEeOXzvVK2MY5wA" 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="_cwd2qJpAEeOXzvVK2MY5wA" 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="_cwd2qppAEeOXzvVK2MY5wA" 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="_cwd2rJpAEeOXzvVK2MY5wA" 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="_cwd2rppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwd2s5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd2r5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd2sJpAEeOXzvVK2MY5wA" 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="_cwd2s5pAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwd2tJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd2tZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwd2tppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd2t5pAEeOXzvVK2MY5wA" 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="_cwd2uZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwd2uppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd2u5pAEeOXzvVK2MY5wA" 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="_cwd2vZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwd2s5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd2vppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd2v5pAEeOXzvVK2MY5wA" 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="_cwd2wppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwd2w5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd2xJpAEeOXzvVK2MY5wA" 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="_cwd2xppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_UntZIFKfEeOx7rZCF5ouIw/293" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd2x5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwd2zJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd2yJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2yZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2yppAEeOXzvVK2MY5wA" 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="_cwd2zJpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwd2zZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2zppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2z5pAEeOXzvVK2MY5wA" 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="_cwd20JpAEeOXzvVK2MY5wA" 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="_cwd20ppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwd205pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd21JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd21ZpAEeOXzvVK2MY5wA" 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="_cwd21ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwd25JpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd22JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd22ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd23JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwd26ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd23ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd24JpAEeOXzvVK2MY5wA" 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="_cwd24ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwd25JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwd25ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwd25ppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwd255pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwd26JpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwd26ZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwd26ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwd265pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwd27JpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwd27ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd27ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwd275pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd28JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd28ZpAEeOXzvVK2MY5wA" 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="_cwd28ppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd29JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd29ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwd27ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd295pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2-ZpAEeOXzvVK2MY5wA" 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="_cwd2-5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwd27ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd2_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd2_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd2_ppAEeOXzvVK2MY5wA" 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="_cwd3AJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwd3AZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3AppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3A5pAEeOXzvVK2MY5wA" 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="_cwd3BJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd3BppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd3CJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwd3AJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd3CZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd3C5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwd3AJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd3DJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd3DppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwd3AJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd3D5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd3EZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwd2zJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd3EppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3E5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3FJpAEeOXzvVK2MY5wA" 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="_cwd3FppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwd3F5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3GJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3GZpAEeOXzvVK2MY5wA" 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="_cwd3GppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd3HJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd3HppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwd3H5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3IJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3IZpAEeOXzvVK2MY5wA" 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="_cwd3IppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd3JJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd3JppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwd3HppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd3J5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3KJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3KZpAEeOXzvVK2MY5wA" 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="_cwd3K5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwd3HppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd3LJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3LZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3LppAEeOXzvVK2MY5wA" 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="_cwd3MJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwd3MZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3MppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3M5pAEeOXzvVK2MY5wA" 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="_cwd3NJpAEeOXzvVK2MY5wA" 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="_cwd3NppAEeOXzvVK2MY5wA" 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="_cwd3OJpAEeOXzvVK2MY5wA" 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="_cwd3OppAEeOXzvVK2MY5wA" 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="_cwd3PJpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwd3QZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd3PZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd3PppAEeOXzvVK2MY5wA" 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="_cwd3QZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwd3QppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd3Q5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwd3RJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd3RZpAEeOXzvVK2MY5wA" 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="_cwd3R5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwd3SJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd3SZpAEeOXzvVK2MY5wA" 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="_cwd3S5pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwd3QZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd3TJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd3TZpAEeOXzvVK2MY5wA" 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="_cwd3UJpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwd3UZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd3UppAEeOXzvVK2MY5wA" 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="_cwd3VJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_MRWLIFKfEeOx7rZCF5ouIw/292" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd3VZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwd3WppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd3VppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3V5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3WJpAEeOXzvVK2MY5wA" 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="_cwd3WppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwd3W5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3XJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3XZpAEeOXzvVK2MY5wA" 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="_cwd3XppAEeOXzvVK2MY5wA" 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="_cwd3YJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwd3YZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3YppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3Y5pAEeOXzvVK2MY5wA" 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="_cwd3ZJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwd3cppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd3ZppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd3aJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd3appAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwd3d5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd3bJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd3bppAEeOXzvVK2MY5wA" 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="_cwd3cJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwd3cppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwd3c5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwd3dJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwd3dZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwd3dppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwd3d5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwd3eJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwd3eZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwd3eppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwd3e5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd3fJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwd3fZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3fppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3f5pAEeOXzvVK2MY5wA" 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="_cwd3gJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd3gppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd3hJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwd3fJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd3hZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3hppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3h5pAEeOXzvVK2MY5wA" 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="_cwd3iZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwd3fJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd3ippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3i5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3jJpAEeOXzvVK2MY5wA" 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="_cwd3jppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwd3j5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3kJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3kZpAEeOXzvVK2MY5wA" 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="_cwd3kppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd3lJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd3lppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwd3jppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd3l5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd3mZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwd3jppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd3mppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd3nJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwd3jppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd3nZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd3n5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwd3WppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd3oJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3oZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3oppAEeOXzvVK2MY5wA" 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="_cwd3pJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwd3pZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3pppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3p5pAEeOXzvVK2MY5wA" 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="_cwd3qJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd3qppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd3rJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwd3rZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3rppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3r5pAEeOXzvVK2MY5wA" 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="_cwd3sJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd3sppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd3tJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwd3rJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd3tZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3tppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3t5pAEeOXzvVK2MY5wA" 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="_cwd3uZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwd3rJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd3uppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3u5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3vJpAEeOXzvVK2MY5wA" 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="_cwd3vppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwd3v5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd3wJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd3wZpAEeOXzvVK2MY5wA" 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="_cwd3wppAEeOXzvVK2MY5wA" 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="_cwd3xJpAEeOXzvVK2MY5wA" 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="_cwd3xppAEeOXzvVK2MY5wA" 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="_cwd3yJpAEeOXzvVK2MY5wA" 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="_cwd3yppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwd3z5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd3y5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd3zJpAEeOXzvVK2MY5wA" 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="_cwd3z5pAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwd30JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd30ZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwd30ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd305pAEeOXzvVK2MY5wA" 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="_cwd31ZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwd31ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd315pAEeOXzvVK2MY5wA" 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="_cwd32ZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwd3z5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd32ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd325pAEeOXzvVK2MY5wA" 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="_cwd33ppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwd335pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd34JpAEeOXzvVK2MY5wA" 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="_cwd34ppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_tFnu8FKeEeOx7rZCF5ouIw/291" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd345pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwd36JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd35JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd35ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd35ppAEeOXzvVK2MY5wA" 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="_cwd36JpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwd36ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd36ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd365pAEeOXzvVK2MY5wA" 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="_cwd37JpAEeOXzvVK2MY5wA" 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="_cwd37ppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwd375pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd38JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd38ZpAEeOXzvVK2MY5wA" 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="_cwd38ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwd4AJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd39JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd39ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd3-JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwd4BZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd3-ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd3_JpAEeOXzvVK2MY5wA" 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="_cwd3_ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwd4AJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwd4AZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwd4AppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwd4A5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwd4BJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwd4BZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwd4BppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwd4B5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwd4CJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwd4CZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd4CppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwd4C5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4DJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4DZpAEeOXzvVK2MY5wA" 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="_cwd4DppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd4EJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd4EppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwd4CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd4E5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4FJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4FZpAEeOXzvVK2MY5wA" 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="_cwd4F5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwd4CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd4GJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4GZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4GppAEeOXzvVK2MY5wA" 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="_cwd4HJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwd4HZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4HppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4H5pAEeOXzvVK2MY5wA" 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="_cwd4IJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd4IppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd4JJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwd4HJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd4JZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd4J5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwd4HJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd4KJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd4KppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwd4HJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd4K5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd4LZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwd36JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd4LppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4L5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4MJpAEeOXzvVK2MY5wA" 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="_cwd4MppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwd4M5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4NJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4NZpAEeOXzvVK2MY5wA" 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="_cwd4NppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd4OJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd4OppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwd4O5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4PJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4PZpAEeOXzvVK2MY5wA" 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="_cwd4PppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd4QJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd4QppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwd4OppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd4Q5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4RJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4RZpAEeOXzvVK2MY5wA" 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="_cwd4R5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwd4OppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd4SJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4SZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4SppAEeOXzvVK2MY5wA" 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="_cwd4TJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwd4TZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4TppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4T5pAEeOXzvVK2MY5wA" 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="_cwd4UJpAEeOXzvVK2MY5wA" 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="_cwd4UppAEeOXzvVK2MY5wA" 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="_cwd4VJpAEeOXzvVK2MY5wA" 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="_cwd4VppAEeOXzvVK2MY5wA" 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="_cwd4WJpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwd4XZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd4WZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd4WppAEeOXzvVK2MY5wA" 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="_cwd4XZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwd4XppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd4X5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwd4YJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd4YZpAEeOXzvVK2MY5wA" 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="_cwd4Y5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwd4ZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd4ZZpAEeOXzvVK2MY5wA" 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="_cwd4Z5pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwd4XZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd4aJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd4aZpAEeOXzvVK2MY5wA" 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="_cwd4bJpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwd4bZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd4bppAEeOXzvVK2MY5wA" 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="_cwd4cJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_Y-wHUFKeEeOx7rZCF5ouIw/290" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd4cZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwd4dppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd4cppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4c5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4dJpAEeOXzvVK2MY5wA" 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="_cwd4dppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwd4d5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4eJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4eZpAEeOXzvVK2MY5wA" 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="_cwd4eppAEeOXzvVK2MY5wA" 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="_cwd4fJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwd4fZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4fppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4f5pAEeOXzvVK2MY5wA" 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="_cwd4gJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwd4jppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd4gppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd4hJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd4hppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwd4k5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd4iJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd4ippAEeOXzvVK2MY5wA" 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="_cwd4jJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwd4jppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwd4j5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwd4kJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwd4kZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwd4kppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwd4k5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwd4lJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwd4lZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwd4lppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwd4l5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd4mJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwd4mZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4mppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4m5pAEeOXzvVK2MY5wA" 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="_cwd4nJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd4nppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd4oJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwd4mJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd4oZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4oppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4o5pAEeOXzvVK2MY5wA" 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="_cwd4pZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwd4mJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd4pppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4p5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4qJpAEeOXzvVK2MY5wA" 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="_cwd4qppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwd4q5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4rJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4rZpAEeOXzvVK2MY5wA" 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="_cwd4rppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd4sJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd4sppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwd4qppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd4s5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd4tZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwd4qppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd4tppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd4uJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwd4qppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd4uZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd4u5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwd4dppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd4vJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4vZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4vppAEeOXzvVK2MY5wA" 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="_cwd4wJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwd4wZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4wppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4w5pAEeOXzvVK2MY5wA" 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="_cwd4xJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwd4xppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd4yJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwd4yZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd4yppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd4y5pAEeOXzvVK2MY5wA" 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="_cwd4zJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd4zppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd40JpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwd4yJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd40ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd40ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd405pAEeOXzvVK2MY5wA" 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="_cwd41ZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwd4yJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd41ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd415pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd42JpAEeOXzvVK2MY5wA" 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="_cwd42ppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwd425pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd43JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd43ZpAEeOXzvVK2MY5wA" 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="_cwd43ppAEeOXzvVK2MY5wA" 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="_cwd44JpAEeOXzvVK2MY5wA" 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="_cwd44ppAEeOXzvVK2MY5wA" 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="_cwd45JpAEeOXzvVK2MY5wA" 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="_cwd45ppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwd465pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd455pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd46JpAEeOXzvVK2MY5wA" 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="_cwd465pAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwd47JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd47ZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwd47ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd475pAEeOXzvVK2MY5wA" 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="_cwd48ZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwd48ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd485pAEeOXzvVK2MY5wA" 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="_cwd49ZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwd465pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd49ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd495pAEeOXzvVK2MY5wA" 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="_cwd4-ppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwd4-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwd4_JpAEeOXzvVK2MY5wA" 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="_cwd4_ppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_Ne0gUFKeEeOx7rZCF5ouIw/289" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwd4_5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwd5BJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwd5AJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd5AZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd5AppAEeOXzvVK2MY5wA" 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="_cwd5BJpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwd5BZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd5BppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd5B5pAEeOXzvVK2MY5wA" 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="_cwd5CJpAEeOXzvVK2MY5wA" 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="_cwd5CppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwd5C5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwd5DJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwd5DZpAEeOXzvVK2MY5wA" 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="_cwd5DppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwecvJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwecsJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwecsppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwectJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwecwZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwectppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwecuJpAEeOXzvVK2MY5wA" 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="_cwecuppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwecvJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwecvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwecvppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwecv5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwecwJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwecwZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwecwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwecw5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwecxJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwecxZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwecxppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwecx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwecyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwecyZpAEeOXzvVK2MY5wA" 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="_cwecyppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cweczJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cweczppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwecxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwecz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwec0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwec0ZpAEeOXzvVK2MY5wA" 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="_cwec05pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwecxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwec1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwec1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwec1ppAEeOXzvVK2MY5wA" 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="_cwec2JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwec2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwec2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwec25pAEeOXzvVK2MY5wA" 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="_cwec3JpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwec3ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwec4JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwec2JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwec4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwec45pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwec2JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwec5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwec5ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwec2JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwec55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwec6ZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwd5BJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwec6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwec65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwec7JpAEeOXzvVK2MY5wA" 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="_cwec7ppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwec75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwec8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwec8ZpAEeOXzvVK2MY5wA" 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="_cwec8ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwec9JpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwec9ppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwec95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwec-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwec-ZpAEeOXzvVK2MY5wA" 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="_cwec-ppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwec_JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwec_ppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwec9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwec_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedAZpAEeOXzvVK2MY5wA" 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="_cwedA5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwec9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwedBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedBppAEeOXzvVK2MY5wA" 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="_cwedCJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwedCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedC5pAEeOXzvVK2MY5wA" 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="_cwedDJpAEeOXzvVK2MY5wA" 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="_cwedDppAEeOXzvVK2MY5wA" 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="_cwedEJpAEeOXzvVK2MY5wA" 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="_cwedEppAEeOXzvVK2MY5wA" 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="_cwedFJpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwedGZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwedFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwedFppAEeOXzvVK2MY5wA" 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="_cwedGZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwedGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwedG5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwedHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwedHZpAEeOXzvVK2MY5wA" 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="_cwedH5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwedIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwedIZpAEeOXzvVK2MY5wA" 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="_cwedI5pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwedGZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwedJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwedJZpAEeOXzvVK2MY5wA" 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="_cwedKJpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwedKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwedKppAEeOXzvVK2MY5wA" 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="_cwedLJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_LwQswFKeEeOx7rZCF5ouIw/288" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwedLZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwedMppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwedLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedMJpAEeOXzvVK2MY5wA" 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="_cwedMppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwedM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedNZpAEeOXzvVK2MY5wA" 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="_cwedNppAEeOXzvVK2MY5wA" 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="_cwedOJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwedOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedO5pAEeOXzvVK2MY5wA" 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="_cwedPJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwedSppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwedPppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwedQJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwedQppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwedT5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwedRJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwedRppAEeOXzvVK2MY5wA" 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="_cwedSJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwedSppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwedS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwedTJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwedTZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwedTppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwedT5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwedUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwedUZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwedUppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwedU5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwedVJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwedVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedV5pAEeOXzvVK2MY5wA" 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="_cwedWJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwedWppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwedXJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwedVJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwedXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedX5pAEeOXzvVK2MY5wA" 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="_cwedYZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwedVJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwedYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedZJpAEeOXzvVK2MY5wA" 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="_cwedZppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwedZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedaZpAEeOXzvVK2MY5wA" 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="_cwedappAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwedbJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwedbppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwedZppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwedb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwedcZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwedZppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwedcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cweddJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwedZppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweddZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwedd5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwedMppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwedeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedeppAEeOXzvVK2MY5wA" 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="_cwedfJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwedfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedf5pAEeOXzvVK2MY5wA" 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="_cwedgJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwedgppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwedhJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwedhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedh5pAEeOXzvVK2MY5wA" 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="_cwediJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwedippAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwedjJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwedhJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwedjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedj5pAEeOXzvVK2MY5wA" 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="_cwedkZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwedhJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwedkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedlJpAEeOXzvVK2MY5wA" 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="_cwedlppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwedl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedmZpAEeOXzvVK2MY5wA" 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="_cwedmppAEeOXzvVK2MY5wA" 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="_cwednJpAEeOXzvVK2MY5wA" 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="_cwednppAEeOXzvVK2MY5wA" 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="_cwedoJpAEeOXzvVK2MY5wA" 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="_cwedoppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwedp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwedo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwedpJpAEeOXzvVK2MY5wA" 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="_cwedp5pAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwedqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwedqZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwedqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwedq5pAEeOXzvVK2MY5wA" 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="_cwedrZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwedrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwedr5pAEeOXzvVK2MY5wA" 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="_cwedsZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwedp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwedsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cweds5pAEeOXzvVK2MY5wA" 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="_cwedtppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwedt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cweduJpAEeOXzvVK2MY5wA" 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="_cweduppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_8g8p8FKdEeOx7rZCF5ouIw/287" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwedu5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwedwJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwedvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedvppAEeOXzvVK2MY5wA" 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="_cwedwJpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwedwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedw5pAEeOXzvVK2MY5wA" 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="_cwedxJpAEeOXzvVK2MY5wA" 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="_cwedxppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwedx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwedyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwedyZpAEeOXzvVK2MY5wA" 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="_cwedyppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwed2JpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwedzJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwedzppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwed0JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwed3ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwed0ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwed1JpAEeOXzvVK2MY5wA" 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="_cwed1ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwed2JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwed2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwed2ppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwed25pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwed3JpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwed3ZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwed3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwed35pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwed4JpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwed4ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwed4ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwed45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwed5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwed5ZpAEeOXzvVK2MY5wA" 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="_cwed5ppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwed6JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwed6ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwed4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwed65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwed7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwed7ZpAEeOXzvVK2MY5wA" 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="_cwed75pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwed4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwed8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwed8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwed8ppAEeOXzvVK2MY5wA" 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="_cwed9JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwed9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwed9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwed95pAEeOXzvVK2MY5wA" 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="_cwed-JpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwed-ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwed_JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwed9JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwed_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwed_5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwed9JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweeAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cweeAppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwed9JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweeA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cweeBZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwedwJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweeBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweeB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweeCJpAEeOXzvVK2MY5wA" 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="_cweeCppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cweeC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweeDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweeDZpAEeOXzvVK2MY5wA" 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="_cweeDppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cweeEJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cweeEppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cweeE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweeFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweeFZpAEeOXzvVK2MY5wA" 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="_cweeFppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cweeGJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cweeGppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cweeEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweeG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweeHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweeHZpAEeOXzvVK2MY5wA" 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="_cweeH5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cweeEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweeIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweeIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweeIppAEeOXzvVK2MY5wA" 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="_cweeJJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cweeJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweeJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweeJ5pAEeOXzvVK2MY5wA" 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="_cweeKJpAEeOXzvVK2MY5wA" 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="_cweeKppAEeOXzvVK2MY5wA" 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="_cweeLJpAEeOXzvVK2MY5wA" 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="_cweeLppAEeOXzvVK2MY5wA" 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="_cweeMJpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cweeNZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweeMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cweeMppAEeOXzvVK2MY5wA" 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="_cweeNZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cweeNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cweeN5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cweeOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cweeOZpAEeOXzvVK2MY5wA" 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="_cweeO5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cweePJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cweePZpAEeOXzvVK2MY5wA" 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="_cweeP5pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cweeNZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweeQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cweeQZpAEeOXzvVK2MY5wA" 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="_cweeRJpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cweeRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cweeRppAEeOXzvVK2MY5wA" 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="_cweeSJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_7H9dwFKdEeOx7rZCF5ouIw/286" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cweeSZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cweeTppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweeSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweeS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweeTJpAEeOXzvVK2MY5wA" 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="_cweeTppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cweeT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweeUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweeUZpAEeOXzvVK2MY5wA" 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="_cweeUppAEeOXzvVK2MY5wA" 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="_cweeVJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cweeVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweeVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweeV5pAEeOXzvVK2MY5wA" 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="_cweeWJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cweeZppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cweeWppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cweeXJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cweeXppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cweea5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cweeYJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cweeYppAEeOXzvVK2MY5wA" 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="_cweeZJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cweeZppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cweeZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cweeaJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cweeaZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cweeappAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cweea5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cweebJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cweebZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cweebppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cweeb5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cweecJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cweecZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweecppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweec5pAEeOXzvVK2MY5wA" 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="_cweedJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cweedppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cweeeJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cweecJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweeeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweeeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweee5pAEeOXzvVK2MY5wA" 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="_cweefZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cweecJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweefppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweef5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweegJpAEeOXzvVK2MY5wA" 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="_cweegppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cweeg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweehJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweehZpAEeOXzvVK2MY5wA" 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="_cweehppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cweeiJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cweeippAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cweegppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweei5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cweejZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cweegppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweejppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cweekJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cweegppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweekZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cweek5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cweeTppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweelJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweelZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweelppAEeOXzvVK2MY5wA" 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="_cweemJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cweemZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweemppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweem5pAEeOXzvVK2MY5wA" 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="_cweenJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cweenppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cweeoJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cweeoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweeoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweeo5pAEeOXzvVK2MY5wA" 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="_cweepJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cweepppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cweeqJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cweeoJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweeqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweeqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweeq5pAEeOXzvVK2MY5wA" 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="_cweerZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cweeoJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweerppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweer5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweesJpAEeOXzvVK2MY5wA" 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="_cweesppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwees5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweetJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweetZpAEeOXzvVK2MY5wA" 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="_cweetppAEeOXzvVK2MY5wA" 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="_cweeuJpAEeOXzvVK2MY5wA" 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="_cweeuppAEeOXzvVK2MY5wA" 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="_cweevJpAEeOXzvVK2MY5wA" 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="_cweevppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cweew5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweev5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cweewJpAEeOXzvVK2MY5wA" 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="_cweew5pAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cweexJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cweexZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cweexppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cweex5pAEeOXzvVK2MY5wA" 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="_cweeyZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cweeyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cweey5pAEeOXzvVK2MY5wA" 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="_cweezZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cweew5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweezppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cweez5pAEeOXzvVK2MY5wA" 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="_cwee0ppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwee05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwee1JpAEeOXzvVK2MY5wA" 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="_cwee1ppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_wDBwsFKdEeOx7rZCF5ouIw/285" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwee15pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwee3JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwee2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwee2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwee2ppAEeOXzvVK2MY5wA" 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="_cwee3JpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwee3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwee3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwee35pAEeOXzvVK2MY5wA" 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="_cwee4JpAEeOXzvVK2MY5wA" 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="_cwee4ppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwee45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwee5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwee5ZpAEeOXzvVK2MY5wA" 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="_cwee5ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwee9JpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwee6JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwee6ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwee7JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwee-ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwee7ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwee8JpAEeOXzvVK2MY5wA" 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="_cwee8ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwee9JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwee9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwee9ppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwee95pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwee-JpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwee-ZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwee-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwee-5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwee_JpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwee_ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwee_ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwee_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefAZpAEeOXzvVK2MY5wA" 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="_cwefAppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwefBJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwefBppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwee_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwefB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefCZpAEeOXzvVK2MY5wA" 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="_cwefC5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwee_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwefDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefDppAEeOXzvVK2MY5wA" 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="_cwefEJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwefEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefE5pAEeOXzvVK2MY5wA" 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="_cwefFJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwefFppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwefGJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwefEJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwefGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwefG5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwefEJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwefHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwefHppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwefEJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwefH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwefIZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwee3JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwefIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefJJpAEeOXzvVK2MY5wA" 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="_cwefJppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwefJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefKZpAEeOXzvVK2MY5wA" 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="_cwefKppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwefLJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwefLppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwefL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefMZpAEeOXzvVK2MY5wA" 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="_cwefMppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwefNJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwefNppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwefLppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwefN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefOZpAEeOXzvVK2MY5wA" 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="_cwefO5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwefLppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwefPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefPppAEeOXzvVK2MY5wA" 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="_cwefQJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwefQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefQ5pAEeOXzvVK2MY5wA" 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="_cwefRJpAEeOXzvVK2MY5wA" 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="_cwefRppAEeOXzvVK2MY5wA" 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="_cwefSJpAEeOXzvVK2MY5wA" 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="_cwefSppAEeOXzvVK2MY5wA" 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="_cwefTJpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwefUZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwefTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwefTppAEeOXzvVK2MY5wA" 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="_cwefUZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwefUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwefU5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwefVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwefVZpAEeOXzvVK2MY5wA" 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="_cwefV5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwefWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwefWZpAEeOXzvVK2MY5wA" 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="_cwefW5pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwefUZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwefXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwefXZpAEeOXzvVK2MY5wA" 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="_cwefYJpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwefYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwefYppAEeOXzvVK2MY5wA" 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="_cwefZJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_aKjokFKdEeOx7rZCF5ouIw/284" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwefZZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwefappAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwefZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefaJpAEeOXzvVK2MY5wA" 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="_cwefappAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwefa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefbZpAEeOXzvVK2MY5wA" 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="_cwefbppAEeOXzvVK2MY5wA" 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="_cwefcJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwefcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefc5pAEeOXzvVK2MY5wA" 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="_cwefdJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwefgppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwefdppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwefeJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwefeppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwefh5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cweffJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cweffppAEeOXzvVK2MY5wA" 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="_cwefgJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwefgppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwefg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwefhJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwefhZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwefhppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwefh5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwefiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwefiZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwefippAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwefi5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwefjJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwefjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefj5pAEeOXzvVK2MY5wA" 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="_cwefkJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwefkppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cweflJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwefjJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cweflZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweflppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefl5pAEeOXzvVK2MY5wA" 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="_cwefmZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwefjJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwefmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefnJpAEeOXzvVK2MY5wA" 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="_cwefnppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwefn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefoZpAEeOXzvVK2MY5wA" 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="_cwefoppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwefpJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwefpppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwefnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwefp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwefqZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwefnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwefqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwefrJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwefnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwefrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwefr5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwefappAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwefsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefsppAEeOXzvVK2MY5wA" 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="_cweftJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cweftZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cweftppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cweft5pAEeOXzvVK2MY5wA" 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="_cwefuJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwefuppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwefvJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwefvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefv5pAEeOXzvVK2MY5wA" 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="_cwefwJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwefwppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwefxJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwefvJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwefxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefx5pAEeOXzvVK2MY5wA" 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="_cwefyZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwefvJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwefyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwefy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwefzJpAEeOXzvVK2MY5wA" 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="_cwefzppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwefz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwef0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwef0ZpAEeOXzvVK2MY5wA" 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="_cwef0ppAEeOXzvVK2MY5wA" 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="_cwef1JpAEeOXzvVK2MY5wA" 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="_cwef1ppAEeOXzvVK2MY5wA" 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="_cwef2JpAEeOXzvVK2MY5wA" 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="_cwef2ppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwef35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwef25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwef3JpAEeOXzvVK2MY5wA" 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="_cwef35pAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwef4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwef4ZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwef4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwef45pAEeOXzvVK2MY5wA" 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="_cwef5ZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwef5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwef55pAEeOXzvVK2MY5wA" 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="_cwef6ZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwef35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwef6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwef65pAEeOXzvVK2MY5wA" 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="_cwef7ppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwef75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwef8JpAEeOXzvVK2MY5wA" 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="_cwef8ppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_IrS8YFKdEeOx7rZCF5ouIw/283" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwef85pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwef-JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwef9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwef9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwef9ppAEeOXzvVK2MY5wA" 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="_cwef-JpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwef-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwef-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwef-5pAEeOXzvVK2MY5wA" 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="_cwef_JpAEeOXzvVK2MY5wA" 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="_cwef_ppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwef_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwegAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwegAZpAEeOXzvVK2MY5wA" 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="_cwegAppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwegEJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwegBJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwegBppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwegCJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwegFZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwegCppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwegDJpAEeOXzvVK2MY5wA" 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="_cwegDppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwegEJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwegEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwegEppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwegE5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwegFJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwegFZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwegFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwegF5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwegGJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwegGZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwegGppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwegG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwegHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwegHZpAEeOXzvVK2MY5wA" 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="_cwegHppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwegIJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwegIppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwegGppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwegI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwegJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwegJZpAEeOXzvVK2MY5wA" 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="_cwegJ5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwegGppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwegKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwegKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwegKppAEeOXzvVK2MY5wA" 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="_cwfDwZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwfDwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfDw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfDxJpAEeOXzvVK2MY5wA" 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="_cwfDxZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfDx5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfDyZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwfDwZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfDyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfDzJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwfDwZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfDzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfDz5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwfDwZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfD0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfD0ppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwef-JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfD05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfD1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfD1ZpAEeOXzvVK2MY5wA" 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="_cwfD15pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwfD2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfD2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfD2ppAEeOXzvVK2MY5wA" 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="_cwfD25pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfD3ZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfD35pAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwfD4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfD4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfD4ppAEeOXzvVK2MY5wA" 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="_cwfD45pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfD5ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfD55pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwfD35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfD6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfD6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfD6ppAEeOXzvVK2MY5wA" 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="_cwfD7JpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwfD35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfD7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfD7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfD75pAEeOXzvVK2MY5wA" 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="_cwfD8ZpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwfD8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfD85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfD9JpAEeOXzvVK2MY5wA" 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="_cwfD9ZpAEeOXzvVK2MY5wA" 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="_cwfD95pAEeOXzvVK2MY5wA" 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="_cwfD-ZpAEeOXzvVK2MY5wA" 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="_cwfD-5pAEeOXzvVK2MY5wA" 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="_cwfD_ZpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwfEAppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfD_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfD_5pAEeOXzvVK2MY5wA" 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="_cwfEAppAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwfEA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfEBJpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwfEBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfEBppAEeOXzvVK2MY5wA" 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="_cwfECJpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwfECZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfECppAEeOXzvVK2MY5wA" 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="_cwfEDJpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwfEAppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfEDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfEDppAEeOXzvVK2MY5wA" 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="_cwfEEZpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwfEEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfEE5pAEeOXzvVK2MY5wA" 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="_cwfEFZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_EIXjwFKdEeOx7rZCF5ouIw/282" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfEFppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwfEG5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfEF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfEGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfEGZpAEeOXzvVK2MY5wA" 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="_cwfEG5pAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwfEHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfEHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfEHppAEeOXzvVK2MY5wA" 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="_cwfEH5pAEeOXzvVK2MY5wA" 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="_cwfEIZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwfEIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfEI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfEJJpAEeOXzvVK2MY5wA" 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="_cwfEJZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwfEM5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfEJ5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfEKZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfEK5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwfEOJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfELZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfEL5pAEeOXzvVK2MY5wA" 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="_cwfEMZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfEM5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwfENJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfENZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfENppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwfEN5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfEOJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwfEOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfEOppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfEO5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwfEPJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfEPZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwfEPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfEP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfEQJpAEeOXzvVK2MY5wA" 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="_cwfEQZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfEQ5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfERZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwfEPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfERppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfER5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfESJpAEeOXzvVK2MY5wA" 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="_cwfESppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwfEPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfES5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfETJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfETZpAEeOXzvVK2MY5wA" 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="_cwfET5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwfEUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfEUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfEUppAEeOXzvVK2MY5wA" 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="_cwfEU5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfEVZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfEV5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwfET5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfEWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfEWppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwfET5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfEW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfEXZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwfET5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfEXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfEYJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwfEG5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfEYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfEYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfEY5pAEeOXzvVK2MY5wA" 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="_cwfEZZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwfEZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfEZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfEaJpAEeOXzvVK2MY5wA" 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="_cwfEaZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfEa5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfEbZpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwfEbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfEb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfEcJpAEeOXzvVK2MY5wA" 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="_cwfEcZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfEc5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfEdZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwfEbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfEdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfEd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfEeJpAEeOXzvVK2MY5wA" 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="_cwfEeppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwfEbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfEe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfEfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfEfZpAEeOXzvVK2MY5wA" 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="_cwfEf5pAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwfEgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfEgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfEgppAEeOXzvVK2MY5wA" 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="_cwfEg5pAEeOXzvVK2MY5wA" 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="_cwfEhZpAEeOXzvVK2MY5wA" 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="_cwfEh5pAEeOXzvVK2MY5wA" 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="_cwfEiZpAEeOXzvVK2MY5wA" 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="_cwfEi5pAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwfEkJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfEjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfEjZpAEeOXzvVK2MY5wA" 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="_cwfEkJpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwfEkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfEkppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwfEk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfElJpAEeOXzvVK2MY5wA" 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="_cwfElppAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwfEl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfEmJpAEeOXzvVK2MY5wA" 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="_cwfEmppAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwfEkJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfEm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfEnJpAEeOXzvVK2MY5wA" 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="_cwfEn5pAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwfEoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfEoZpAEeOXzvVK2MY5wA" 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="_cwfEo5pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_1avRsFKcEeOx7rZCF5ouIw/281" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfEpJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwfEqZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfEpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfEpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfEp5pAEeOXzvVK2MY5wA" 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="_cwfEqZpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwfEqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfEq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfErJpAEeOXzvVK2MY5wA" 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="_cwfErZpAEeOXzvVK2MY5wA" 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="_cwfEr5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwfEsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfEsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfEsppAEeOXzvVK2MY5wA" 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="_cwfEs5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwfEwZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfEtZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfEt5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfEuZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwfExppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfEu5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfEvZpAEeOXzvVK2MY5wA" 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="_cwfEv5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfEwZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwfEwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfEw5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfExJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwfExZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfExppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwfEx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfEyJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfEyZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwfEyppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfEy5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwfEzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfEzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfEzppAEeOXzvVK2MY5wA" 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="_cwfEz5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfE0ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfE05pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwfEy5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfE1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfE1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfE1ppAEeOXzvVK2MY5wA" 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="_cwfE2JpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwfEy5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfE2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfE2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfE25pAEeOXzvVK2MY5wA" 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="_cwfE3ZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwfE3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfE35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfE4JpAEeOXzvVK2MY5wA" 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="_cwfE4ZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfE45pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfE5ZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwfE3ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfE5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfE6JpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwfE3ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfE6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfE65pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwfE3ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfE7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfE7ppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwfEqZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfE75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfE8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfE8ZpAEeOXzvVK2MY5wA" 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="_cwfE85pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwfE9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfE9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfE9ppAEeOXzvVK2MY5wA" 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="_cwfE95pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfE-ZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfE-5pAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwfE_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfE_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfE_ppAEeOXzvVK2MY5wA" 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="_cwfE_5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfFAZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfFA5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwfE-5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfFBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFBppAEeOXzvVK2MY5wA" 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="_cwfFCJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwfE-5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfFCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFC5pAEeOXzvVK2MY5wA" 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="_cwfFDZpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwfFDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFEJpAEeOXzvVK2MY5wA" 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="_cwfFEZpAEeOXzvVK2MY5wA" 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="_cwfFE5pAEeOXzvVK2MY5wA" 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="_cwfFFZpAEeOXzvVK2MY5wA" 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="_cwfFF5pAEeOXzvVK2MY5wA" 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="_cwfFGZpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwfFHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfFGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfFG5pAEeOXzvVK2MY5wA" 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="_cwfFHppAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwfFH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfFIJpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwfFIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfFIppAEeOXzvVK2MY5wA" 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="_cwfFJJpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwfFJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfFJppAEeOXzvVK2MY5wA" 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="_cwfFKJpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwfFHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfFKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfFKppAEeOXzvVK2MY5wA" 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="_cwfFLZpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwfFLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfFL5pAEeOXzvVK2MY5wA" 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="_cwfFMZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_y2rZgFKcEeOx7rZCF5ouIw/280" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfFMppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwfFN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfFM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFNZpAEeOXzvVK2MY5wA" 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="_cwfFN5pAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwfFOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFOppAEeOXzvVK2MY5wA" 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="_cwfFO5pAEeOXzvVK2MY5wA" 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="_cwfFPZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwfFPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFQJpAEeOXzvVK2MY5wA" 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="_cwfFQZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwfFT5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfFQ5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfFRZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfFR5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwfFVJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfFSZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfFS5pAEeOXzvVK2MY5wA" 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="_cwfFTZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfFT5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwfFUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfFUZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfFUppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwfFU5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfFVJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwfFVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfFVppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfFV5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwfFWJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfFWZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwfFWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFXJpAEeOXzvVK2MY5wA" 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="_cwfFXZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfFX5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfFYZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwfFWZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfFYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFZJpAEeOXzvVK2MY5wA" 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="_cwfFZppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwfFWZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfFZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFaZpAEeOXzvVK2MY5wA" 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="_cwfFa5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwfFbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFbppAEeOXzvVK2MY5wA" 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="_cwfFb5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfFcZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfFc5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwfFa5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfFdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfFdppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwfFa5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfFd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfFeZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwfFa5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfFeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfFfJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwfFN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfFfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFf5pAEeOXzvVK2MY5wA" 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="_cwfFgZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwfFgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFhJpAEeOXzvVK2MY5wA" 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="_cwfFhZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfFh5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfFiZpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwfFippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFjJpAEeOXzvVK2MY5wA" 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="_cwfFjZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfFj5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfFkZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwfFiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfFkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFlJpAEeOXzvVK2MY5wA" 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="_cwfFlppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwfFiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfFl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFmZpAEeOXzvVK2MY5wA" 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="_cwfFm5pAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwfFnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFnppAEeOXzvVK2MY5wA" 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="_cwfFn5pAEeOXzvVK2MY5wA" 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="_cwfFoZpAEeOXzvVK2MY5wA" 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="_cwfFo5pAEeOXzvVK2MY5wA" 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="_cwfFpZpAEeOXzvVK2MY5wA" 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="_cwfFp5pAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwfFrJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfFqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfFqZpAEeOXzvVK2MY5wA" 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="_cwfFrJpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwfFrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfFrppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwfFr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfFsJpAEeOXzvVK2MY5wA" 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="_cwfFsppAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwfFs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfFtJpAEeOXzvVK2MY5wA" 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="_cwfFtppAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwfFrJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfFt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfFuJpAEeOXzvVK2MY5wA" 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="_cwfFu5pAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwfFvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfFvZpAEeOXzvVK2MY5wA" 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="_cwfFv5pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_qnETwFKcEeOx7rZCF5ouIw/279" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfFwJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwfFxZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfFwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFw5pAEeOXzvVK2MY5wA" 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="_cwfFxZpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwfFxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFyJpAEeOXzvVK2MY5wA" 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="_cwfFyZpAEeOXzvVK2MY5wA" 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="_cwfFy5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwfFzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfFzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfFzppAEeOXzvVK2MY5wA" 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="_cwfFz5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwfF3ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfF0ZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfF05pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfF1ZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwfF4ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfF15pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfF2ZpAEeOXzvVK2MY5wA" 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="_cwfF25pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfF3ZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwfF3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfF35pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfF4JpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwfF4ZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfF4ppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwfF45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfF5JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfF5ZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwfF5ppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfF55pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwfF6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfF6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfF6ppAEeOXzvVK2MY5wA" 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="_cwfF65pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfF7ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfF75pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwfF55pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfF8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfF8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfF8ppAEeOXzvVK2MY5wA" 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="_cwfF9JpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwfF55pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfF9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfF9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfF95pAEeOXzvVK2MY5wA" 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="_cwfF-ZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwfF-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfF-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfF_JpAEeOXzvVK2MY5wA" 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="_cwfF_ZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfF_5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfGAZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwfF-ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfGAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfGBJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwfF-ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfGBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfGB5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwfF-ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfGCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfGCppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwfFxZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfGC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGDZpAEeOXzvVK2MY5wA" 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="_cwfGD5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwfGEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGEppAEeOXzvVK2MY5wA" 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="_cwfGE5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfGFZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfGF5pAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwfGGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGGppAEeOXzvVK2MY5wA" 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="_cwfGG5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfGHZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfGH5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwfGF5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfGIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGIppAEeOXzvVK2MY5wA" 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="_cwfGJJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwfGF5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfGJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGJ5pAEeOXzvVK2MY5wA" 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="_cwfGKZpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwfGKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGLJpAEeOXzvVK2MY5wA" 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="_cwfGLZpAEeOXzvVK2MY5wA" 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="_cwfGL5pAEeOXzvVK2MY5wA" 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="_cwfGMZpAEeOXzvVK2MY5wA" 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="_cwfGM5pAEeOXzvVK2MY5wA" 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="_cwfGNZpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwfGOppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfGNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfGN5pAEeOXzvVK2MY5wA" 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="_cwfGOppAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwfGO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfGPJpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwfGPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfGPppAEeOXzvVK2MY5wA" 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="_cwfGQJpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwfGQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfGQppAEeOXzvVK2MY5wA" 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="_cwfGRJpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwfGOppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfGRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfGRppAEeOXzvVK2MY5wA" 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="_cwfGSZpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwfGSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfGS5pAEeOXzvVK2MY5wA" 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="_cwfGTZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_H31UkFKcEeOx7rZCF5ouIw/278" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfGTppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwfGU5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfGT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGUZpAEeOXzvVK2MY5wA" 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="_cwfGU5pAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwfGVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGVppAEeOXzvVK2MY5wA" 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="_cwfGV5pAEeOXzvVK2MY5wA" 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="_cwfGWZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwfGWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGXJpAEeOXzvVK2MY5wA" 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="_cwfGXZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwfGa5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfGX5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfGYZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfGY5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwfGcJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfGZZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfGZ5pAEeOXzvVK2MY5wA" 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="_cwfGaZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfGa5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwfGbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfGbZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfGbppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwfGb5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfGcJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwfGcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfGcppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfGc5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwfGdJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfGdZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwfGdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGeJpAEeOXzvVK2MY5wA" 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="_cwfGeZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfGe5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfGfZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwfGdZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfGfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGgJpAEeOXzvVK2MY5wA" 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="_cwfGgppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwfGdZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfGg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGhZpAEeOXzvVK2MY5wA" 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="_cwfGh5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwfGiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGippAEeOXzvVK2MY5wA" 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="_cwfGi5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfGjZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfGj5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwfGh5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfGkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfGkppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwfGh5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfGk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfGlZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwfGh5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfGlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfGmJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwfGU5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfGmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGm5pAEeOXzvVK2MY5wA" 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="_cwfGnZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwfGnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGoJpAEeOXzvVK2MY5wA" 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="_cwfGoZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfGo5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfGpZpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwfGpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGqJpAEeOXzvVK2MY5wA" 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="_cwfGqZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfGq5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfGrZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwfGpZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfGrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGsJpAEeOXzvVK2MY5wA" 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="_cwfGsppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwfGpZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfGs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGtJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGtZpAEeOXzvVK2MY5wA" 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="_cwfGt5pAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwfGuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfGuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfGuppAEeOXzvVK2MY5wA" 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="_cwfGu5pAEeOXzvVK2MY5wA" 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="_cwfGvZpAEeOXzvVK2MY5wA" 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="_cwfGv5pAEeOXzvVK2MY5wA" 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="_cwfGwZpAEeOXzvVK2MY5wA" 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="_cwfGw5pAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwfGyJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfGxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfGxZpAEeOXzvVK2MY5wA" 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="_cwfGyJpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwfGyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfGyppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwfGy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfGzJpAEeOXzvVK2MY5wA" 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="_cwfGzppAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwfGz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfG0JpAEeOXzvVK2MY5wA" 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="_cwfG0ppAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwfGyJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfG05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfG1JpAEeOXzvVK2MY5wA" 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="_cwfG15pAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwfG2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfG2ZpAEeOXzvVK2MY5wA" 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="_cwfG25pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_6IWFwFKbEeOx7rZCF5ouIw/277" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfG3JpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwfG4ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfG3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfG3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfG35pAEeOXzvVK2MY5wA" 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="_cwfG4ZpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwfG4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfG45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfG5JpAEeOXzvVK2MY5wA" 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="_cwfG5ZpAEeOXzvVK2MY5wA" 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="_cwfG55pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwfG6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfG6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfG6ppAEeOXzvVK2MY5wA" 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="_cwfG65pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwfG-ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfG7ZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfG75pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfG8ZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwfG_ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfG85pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfG9ZpAEeOXzvVK2MY5wA" 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="_cwfG95pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfG-ZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwfG-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfG-5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfG_JpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwfG_ZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfG_ppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwfG_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfHAJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfHAZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwfHAppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfHA5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwfHBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfHBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfHBppAEeOXzvVK2MY5wA" 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="_cwfHB5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfHCZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfHC5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwfHA5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfHDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfHDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfHDppAEeOXzvVK2MY5wA" 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="_cwfq0ZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwfHA5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfq0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfq05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfq1JpAEeOXzvVK2MY5wA" 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="_cwfq1ppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwfq15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfq2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfq2ZpAEeOXzvVK2MY5wA" 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="_cwfq2ppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfq3JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfq3ppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwfq1ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfq35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfq4ZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwfq1ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfq4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfq5JpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwfq1ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfq5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfq55pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwfG4ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfq6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfq6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfq6ppAEeOXzvVK2MY5wA" 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="_cwfq7JpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwfq7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfq7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfq75pAEeOXzvVK2MY5wA" 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="_cwfq8JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfq8ppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfq9JpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwfq9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfq9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfq95pAEeOXzvVK2MY5wA" 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="_cwfq-JpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfq-ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfq_JpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwfq9JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfq_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfq_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfq_5pAEeOXzvVK2MY5wA" 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="_cwfrAZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwfq9JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfrAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfrA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfrBJpAEeOXzvVK2MY5wA" 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="_cwfrBppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwfrB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfrCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfrCZpAEeOXzvVK2MY5wA" 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="_cwfrCppAEeOXzvVK2MY5wA" 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="_cwfrDJpAEeOXzvVK2MY5wA" 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="_cwfrDppAEeOXzvVK2MY5wA" 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="_cwfrEJpAEeOXzvVK2MY5wA" 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="_cwfrEppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwfrF5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfrE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfrFJpAEeOXzvVK2MY5wA" 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="_cwfrF5pAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwfrGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfrGZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwfrGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfrG5pAEeOXzvVK2MY5wA" 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="_cwfrHZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwfrHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfrH5pAEeOXzvVK2MY5wA" 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="_cwfrIZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwfrF5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfrIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfrI5pAEeOXzvVK2MY5wA" 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="_cwfrJppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwfrJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfrKJpAEeOXzvVK2MY5wA" 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="_cwfrKppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_x59IAFKbEeOx7rZCF5ouIw/276" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfrK5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwfrMJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfrLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfrLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfrLppAEeOXzvVK2MY5wA" 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="_cwfrMJpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwfrMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfrMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfrM5pAEeOXzvVK2MY5wA" 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="_cwfrNJpAEeOXzvVK2MY5wA" 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="_cwfrNppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwfrN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfrOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfrOZpAEeOXzvVK2MY5wA" 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="_cwfrOppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwfrSJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfrPJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfrPppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfrQJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwfrTZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfrQppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfrRJpAEeOXzvVK2MY5wA" 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="_cwfrRppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfrSJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwfrSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfrSppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfrS5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwfrTJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfrTZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwfrTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfrT5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfrUJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwfrUZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfrUppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwfrU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfrVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfrVZpAEeOXzvVK2MY5wA" 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="_cwfrVppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfrWJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfrWppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwfrUppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfrW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfrXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfrXZpAEeOXzvVK2MY5wA" 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="_cwfrX5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwfrUppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfrYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfrYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfrYppAEeOXzvVK2MY5wA" 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="_cwfrZJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwfrZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfrZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfrZ5pAEeOXzvVK2MY5wA" 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="_cwfraJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfrappAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfrbJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwfrZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfrbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfrb5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwfrZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfrcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfrcppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwfrZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfrc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfrdZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwfrMJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfrdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfrd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfreJpAEeOXzvVK2MY5wA" 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="_cwfreppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwfre5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfrfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfrfZpAEeOXzvVK2MY5wA" 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="_cwfrfppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfrgJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfrgppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwfrg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfrhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfrhZpAEeOXzvVK2MY5wA" 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="_cwfrhppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfriJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfrippAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwfrgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfri5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfrjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfrjZpAEeOXzvVK2MY5wA" 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="_cwfrj5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwfrgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfrkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfrkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfrkppAEeOXzvVK2MY5wA" 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="_cwfrlJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwfrlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfrlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfrl5pAEeOXzvVK2MY5wA" 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="_cwfrmJpAEeOXzvVK2MY5wA" 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="_cwfrmppAEeOXzvVK2MY5wA" 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="_cwfrnJpAEeOXzvVK2MY5wA" 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="_cwfrnppAEeOXzvVK2MY5wA" 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="_cwfroJpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwfrpZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfroZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfroppAEeOXzvVK2MY5wA" 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="_cwfrpZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwfrpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfrp5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwfrqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfrqZpAEeOXzvVK2MY5wA" 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="_cwfrq5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwfrrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfrrZpAEeOXzvVK2MY5wA" 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="_cwfrr5pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwfrpZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfrsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfrsZpAEeOXzvVK2MY5wA" 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="_cwfrtJpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwfrtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfrtppAEeOXzvVK2MY5wA" 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="_cwfruJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_lSBXIFKbEeOx7rZCF5ouIw/275" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfruZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwfrvppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfruppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfru5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfrvJpAEeOXzvVK2MY5wA" 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="_cwfrvppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwfrv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfrwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfrwZpAEeOXzvVK2MY5wA" 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="_cwfrwppAEeOXzvVK2MY5wA" 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="_cwfrxJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwfrxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfrxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfrx5pAEeOXzvVK2MY5wA" 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="_cwfryJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwfr1ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfryppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfrzJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfrzppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwfr25pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfr0JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfr0ppAEeOXzvVK2MY5wA" 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="_cwfr1JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfr1ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwfr15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfr2JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfr2ZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwfr2ppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfr25pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwfr3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfr3ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfr3ppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwfr35pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfr4JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwfr4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfr4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfr45pAEeOXzvVK2MY5wA" 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="_cwfr5JpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfr5ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfr6JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwfr4JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfr6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfr6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfr65pAEeOXzvVK2MY5wA" 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="_cwfr7ZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwfr4JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfr7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfr75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfr8JpAEeOXzvVK2MY5wA" 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="_cwfr8ppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwfr85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfr9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfr9ZpAEeOXzvVK2MY5wA" 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="_cwfr9ppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfr-JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfr-ppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwfr8ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfr-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfr_ZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwfr8ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfr_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfsAJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwfr8ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfsAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfsA5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwfrvppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfsBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfsBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfsBppAEeOXzvVK2MY5wA" 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="_cwfsCJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwfsCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfsCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfsC5pAEeOXzvVK2MY5wA" 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="_cwfsDJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfsDppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfsEJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwfsEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfsEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfsE5pAEeOXzvVK2MY5wA" 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="_cwfsFJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfsFppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfsGJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwfsEJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfsGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfsGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfsG5pAEeOXzvVK2MY5wA" 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="_cwfsHZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwfsEJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfsHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfsH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfsIJpAEeOXzvVK2MY5wA" 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="_cwfsIppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwfsI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfsJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfsJZpAEeOXzvVK2MY5wA" 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="_cwfsJppAEeOXzvVK2MY5wA" 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="_cwfsKJpAEeOXzvVK2MY5wA" 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="_cwfsKppAEeOXzvVK2MY5wA" 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="_cwfsLJpAEeOXzvVK2MY5wA" 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="_cwfsLppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwfsM5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfsL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfsMJpAEeOXzvVK2MY5wA" 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="_cwfsM5pAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwfsNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfsNZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwfsNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfsN5pAEeOXzvVK2MY5wA" 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="_cwfsOZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwfsOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfsO5pAEeOXzvVK2MY5wA" 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="_cwfsPZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwfsM5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfsPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfsP5pAEeOXzvVK2MY5wA" 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="_cwfsQppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwfsQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfsRJpAEeOXzvVK2MY5wA" 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="_cwfsRppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_XsadEFKbEeOx7rZCF5ouIw/274" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfsR5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwfsTJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfsSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfsSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfsSppAEeOXzvVK2MY5wA" 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="_cwfsTJpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwfsTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfsTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfsT5pAEeOXzvVK2MY5wA" 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="_cwfsUJpAEeOXzvVK2MY5wA" 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="_cwfsUppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwfsU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfsVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfsVZpAEeOXzvVK2MY5wA" 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="_cwfsVppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwfsZJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfsWJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfsWppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfsXJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwfsaZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfsXppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfsYJpAEeOXzvVK2MY5wA" 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="_cwfsYppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfsZJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwfsZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfsZppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfsZ5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwfsaJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfsaZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwfsappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfsa5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfsbJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwfsbZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfsbppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwfsb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfscJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfscZpAEeOXzvVK2MY5wA" 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="_cwfscppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfsdJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfsdppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwfsbppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfsd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfseJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfseZpAEeOXzvVK2MY5wA" 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="_cwfse5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwfsbppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfsfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfsfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfsfppAEeOXzvVK2MY5wA" 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="_cwfsgJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwfsgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfsgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfsg5pAEeOXzvVK2MY5wA" 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="_cwfshJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfshppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfsiJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwfsgJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfsiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfsi5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwfsgJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfsjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfsjppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwfsgJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfsj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfskZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwfsTJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfskppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfsk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfslJpAEeOXzvVK2MY5wA" 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="_cwfslppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwfsl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfsmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfsmZpAEeOXzvVK2MY5wA" 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="_cwfsmppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfsnJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfsnppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwfsn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfsoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfsoZpAEeOXzvVK2MY5wA" 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="_cwfsoppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfspJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfspppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwfsnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfsp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfsqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfsqZpAEeOXzvVK2MY5wA" 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="_cwfsq5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwfsnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfsrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfsrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfsrppAEeOXzvVK2MY5wA" 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="_cwfssJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwfssZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfssppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfss5pAEeOXzvVK2MY5wA" 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="_cwfstJpAEeOXzvVK2MY5wA" 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="_cwfstppAEeOXzvVK2MY5wA" 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="_cwfsuJpAEeOXzvVK2MY5wA" 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="_cwfsuppAEeOXzvVK2MY5wA" 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="_cwfsvJpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwfswZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfsvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfsvppAEeOXzvVK2MY5wA" 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="_cwfswZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwfswppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfsw5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwfsxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfsxZpAEeOXzvVK2MY5wA" 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="_cwfsx5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwfsyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfsyZpAEeOXzvVK2MY5wA" 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="_cwfsy5pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwfswZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfszJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfszZpAEeOXzvVK2MY5wA" 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="_cwfs0JpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwfs0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfs0ppAEeOXzvVK2MY5wA" 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="_cwfs1JpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_NTorYFKbEeOx7rZCF5ouIw/273" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfs1ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwfs2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfs1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfs15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfs2JpAEeOXzvVK2MY5wA" 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="_cwfs2ppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwfs25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfs3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfs3ZpAEeOXzvVK2MY5wA" 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="_cwfs3ppAEeOXzvVK2MY5wA" 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="_cwfs4JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwfs4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfs4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfs45pAEeOXzvVK2MY5wA" 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="_cwfs5JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwfs8ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfs5ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfs6JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfs6ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwfs95pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfs7JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfs7ppAEeOXzvVK2MY5wA" 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="_cwfs8JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfs8ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwfs85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfs9JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfs9ZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwfs9ppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfs95pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwfs-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfs-ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfs-ppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwfs-5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfs_JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwfs_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfs_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfs_5pAEeOXzvVK2MY5wA" 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="_cwftAJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwftAppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwftBJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwfs_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftB5pAEeOXzvVK2MY5wA" 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="_cwftCZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwfs_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftDJpAEeOXzvVK2MY5wA" 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="_cwftDppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwftD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftEZpAEeOXzvVK2MY5wA" 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="_cwftEppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwftFJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwftFppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwftDppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwftGZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwftDppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwftHJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwftDppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwftH5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwfs2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftIppAEeOXzvVK2MY5wA" 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="_cwftJJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwftJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftJ5pAEeOXzvVK2MY5wA" 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="_cwftKJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwftKppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwftLJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwftLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftL5pAEeOXzvVK2MY5wA" 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="_cwftMJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwftMppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwftNJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwftLJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftN5pAEeOXzvVK2MY5wA" 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="_cwftOZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwftLJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftPJpAEeOXzvVK2MY5wA" 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="_cwftPppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwftP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftQZpAEeOXzvVK2MY5wA" 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="_cwftQppAEeOXzvVK2MY5wA" 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="_cwftRJpAEeOXzvVK2MY5wA" 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="_cwftRppAEeOXzvVK2MY5wA" 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="_cwftSJpAEeOXzvVK2MY5wA" 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="_cwftSppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwftT5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwftTJpAEeOXzvVK2MY5wA" 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="_cwftT5pAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwftUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwftUZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwftUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwftU5pAEeOXzvVK2MY5wA" 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="_cwftVZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwftVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwftV5pAEeOXzvVK2MY5wA" 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="_cwftWZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwftT5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwftW5pAEeOXzvVK2MY5wA" 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="_cwftXppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwftX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwftYJpAEeOXzvVK2MY5wA" 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="_cwftYppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_9hYlgFKYEeOx7rZCF5ouIw/272" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwftY5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwftaJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftZppAEeOXzvVK2MY5wA" 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="_cwftaJpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwftaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfta5pAEeOXzvVK2MY5wA" 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="_cwftbJpAEeOXzvVK2MY5wA" 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="_cwftbppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwftb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftcZpAEeOXzvVK2MY5wA" 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="_cwftcppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwftgJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwftdJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwftdppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfteJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwfthZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfteppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwftfJpAEeOXzvVK2MY5wA" 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="_cwftfppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwftgJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwftgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwftgppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwftg5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwfthJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfthZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwfthppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfth5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwftiJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwftiZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwftippAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwfti5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftjZpAEeOXzvVK2MY5wA" 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="_cwftjppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwftkJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwftkppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwftippAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftlZpAEeOXzvVK2MY5wA" 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="_cwftl5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwftippAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftmppAEeOXzvVK2MY5wA" 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="_cwftnJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwftnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftn5pAEeOXzvVK2MY5wA" 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="_cwftoJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwftoppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwftpJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwftnJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwftp5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwftnJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwftqppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwftnJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwftrZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwftaJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftsJpAEeOXzvVK2MY5wA" 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="_cwftsppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwfts5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfttJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfttZpAEeOXzvVK2MY5wA" 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="_cwfttppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwftuJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwftuppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwftu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftvZpAEeOXzvVK2MY5wA" 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="_cwftvppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwftwJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwftwppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwftuppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftxZpAEeOXzvVK2MY5wA" 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="_cwftx5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwftuppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwftyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftyppAEeOXzvVK2MY5wA" 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="_cwftzJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwftzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwftzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwftz5pAEeOXzvVK2MY5wA" 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="_cwft0JpAEeOXzvVK2MY5wA" 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="_cwft0ppAEeOXzvVK2MY5wA" 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="_cwft1JpAEeOXzvVK2MY5wA" 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="_cwft1ppAEeOXzvVK2MY5wA" 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="_cwft2JpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwft3ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwft2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwft2ppAEeOXzvVK2MY5wA" 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="_cwft3ZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwft3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwft35pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwft4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwft4ZpAEeOXzvVK2MY5wA" 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="_cwft45pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwft5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwft5ZpAEeOXzvVK2MY5wA" 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="_cwft55pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwft3ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwft6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwft6ZpAEeOXzvVK2MY5wA" 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="_cwft7JpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwft7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwft7ppAEeOXzvVK2MY5wA" 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="_cwft8JpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_SMZRcFKYEeOx7rZCF5ouIw/271" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwft8ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwft9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwft8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwft85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwft9JpAEeOXzvVK2MY5wA" 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="_cwft9ppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwft95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwft-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwft-ZpAEeOXzvVK2MY5wA" 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="_cwft-ppAEeOXzvVK2MY5wA" 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="_cwft_JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwft_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwft_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwft_5pAEeOXzvVK2MY5wA" 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="_cwfuAJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwfuDppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfuAppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfuBJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfuBppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwfuE5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwfuCJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfuCppAEeOXzvVK2MY5wA" 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="_cwfuDJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfuDppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwfuD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfuEJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfuEZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwfuEppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwfuE5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwfuFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwfuFZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwfuFppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwfuF5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfuGJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwfuGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfuGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfuG5pAEeOXzvVK2MY5wA" 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="_cwfuHJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfuHppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfuIJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwfuGJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfuIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfuIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfuI5pAEeOXzvVK2MY5wA" 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="_cwfuJZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwfuGJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfuJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfuJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfuKJpAEeOXzvVK2MY5wA" 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="_cwfuKppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwfuK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwfuLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwfuLZpAEeOXzvVK2MY5wA" 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="_cwfuLppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwfuMJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfuMppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwfuKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfuM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfuNZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwfuKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfuNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwfuOJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwfuKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwfuOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgR4ZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwft9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgR4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgR45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgR5JpAEeOXzvVK2MY5wA" 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="_cwgR5ppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwgR55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgR6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgR6ZpAEeOXzvVK2MY5wA" 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="_cwgR6ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgR7JpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgR7ppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwgR75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgR8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgR8ZpAEeOXzvVK2MY5wA" 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="_cwgR8ppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgR9JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgR9ppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwgR7ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgR95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgR-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgR-ZpAEeOXzvVK2MY5wA" 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="_cwgR-5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwgR7ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgR_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgR_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgR_ppAEeOXzvVK2MY5wA" 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="_cwgSAJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwgSAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgSAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgSA5pAEeOXzvVK2MY5wA" 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="_cwgSBJpAEeOXzvVK2MY5wA" 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="_cwgSBppAEeOXzvVK2MY5wA" 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="_cwgSCJpAEeOXzvVK2MY5wA" 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="_cwgSCppAEeOXzvVK2MY5wA" 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="_cwgSDJpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwgSEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgSDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgSDppAEeOXzvVK2MY5wA" 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="_cwgSEZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwgSEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgSE5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwgSFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgSFZpAEeOXzvVK2MY5wA" 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="_cwgSF5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwgSGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgSGZpAEeOXzvVK2MY5wA" 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="_cwgSG5pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwgSEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgSHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgSHZpAEeOXzvVK2MY5wA" 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="_cwgSIJpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwgSIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgSIppAEeOXzvVK2MY5wA" 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="_cwgSJJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_IE0kgFKYEeOx7rZCF5ouIw/270" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgSJZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwgSKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgSJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgSJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgSKJpAEeOXzvVK2MY5wA" 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="_cwgSKppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwgSK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgSLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgSLZpAEeOXzvVK2MY5wA" 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="_cwgSLppAEeOXzvVK2MY5wA" 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="_cwgSMJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwgSMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgSMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgSM5pAEeOXzvVK2MY5wA" 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="_cwgSNJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwgSQppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgSNppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgSOJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgSOppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwgSR5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgSPJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgSPppAEeOXzvVK2MY5wA" 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="_cwgSQJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwgSQppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwgSQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwgSRJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwgSRZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwgSRppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwgSR5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwgSSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwgSSZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwgSSppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwgSS5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgSTJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwgSTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgSTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgST5pAEeOXzvVK2MY5wA" 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="_cwgSUJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgSUppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgSVJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwgSTJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgSVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgSVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgSV5pAEeOXzvVK2MY5wA" 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="_cwgSWZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwgSTJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgSWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgSW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgSXJpAEeOXzvVK2MY5wA" 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="_cwgSXppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwgSX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgSYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgSYZpAEeOXzvVK2MY5wA" 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="_cwgSYppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgSZJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgSZppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwgSXppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgSZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgSaZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwgSXppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgSappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgSbJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwgSXppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgSbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgSb5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwgSKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgScJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgScZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgScppAEeOXzvVK2MY5wA" 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="_cwgSdJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwgSdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgSdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgSd5pAEeOXzvVK2MY5wA" 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="_cwgSeJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgSeppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgSfJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwgSfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgSfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgSf5pAEeOXzvVK2MY5wA" 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="_cwgSgJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgSgppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgShJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwgSfJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgShZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgShppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgSh5pAEeOXzvVK2MY5wA" 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="_cwgSiZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwgSfJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgSippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgSi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgSjJpAEeOXzvVK2MY5wA" 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="_cwgSjppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwgSj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgSkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgSkZpAEeOXzvVK2MY5wA" 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="_cwgSkppAEeOXzvVK2MY5wA" 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="_cwgSlJpAEeOXzvVK2MY5wA" 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="_cwgSlppAEeOXzvVK2MY5wA" 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="_cwgSmJpAEeOXzvVK2MY5wA" 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="_cwgSmppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwgSn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgSm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgSnJpAEeOXzvVK2MY5wA" 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="_cwgSn5pAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwgSoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgSoZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwgSoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgSo5pAEeOXzvVK2MY5wA" 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="_cwgSpZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwgSpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgSp5pAEeOXzvVK2MY5wA" 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="_cwgSqZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwgSn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgSqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgSq5pAEeOXzvVK2MY5wA" 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="_cwgSrppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwgSr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgSsJpAEeOXzvVK2MY5wA" 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="_cwgSsppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_E25P8FKYEeOx7rZCF5ouIw/269" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgSs5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwgSuJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgStJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgStZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgStppAEeOXzvVK2MY5wA" 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="_cwgSuJpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwgSuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgSuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgSu5pAEeOXzvVK2MY5wA" 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="_cwgSvJpAEeOXzvVK2MY5wA" 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="_cwgSvppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwgSv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgSwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgSwZpAEeOXzvVK2MY5wA" 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="_cwgSwppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwgS0JpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgSxJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgSxppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgSyJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwgS1ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgSyppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgSzJpAEeOXzvVK2MY5wA" 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="_cwgSzppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwgS0JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwgS0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwgS0ppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwgS05pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwgS1JpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwgS1ZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwgS1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwgS15pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwgS2JpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwgS2ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgS2ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwgS25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgS3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgS3ZpAEeOXzvVK2MY5wA" 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="_cwgS3ppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgS4JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgS4ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwgS2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgS45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgS5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgS5ZpAEeOXzvVK2MY5wA" 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="_cwgS55pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwgS2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgS6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgS6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgS6ppAEeOXzvVK2MY5wA" 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="_cwgS7JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwgS7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgS7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgS75pAEeOXzvVK2MY5wA" 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="_cwgS8JpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgS8ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgS9JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwgS7JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgS9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgS95pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwgS7JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgS-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgS-ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwgS7JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgS-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgS_ZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwgSuJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgS_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgS_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTAJpAEeOXzvVK2MY5wA" 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="_cwgTAppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwgTA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgTBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTBZpAEeOXzvVK2MY5wA" 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="_cwgTBppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgTCJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgTCppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwgTC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgTDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTDZpAEeOXzvVK2MY5wA" 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="_cwgTDppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgTEJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgTEppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwgTCppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgTE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgTFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTFZpAEeOXzvVK2MY5wA" 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="_cwgTF5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwgTCppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgTGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgTGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTGppAEeOXzvVK2MY5wA" 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="_cwgTHJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwgTHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgTHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTH5pAEeOXzvVK2MY5wA" 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="_cwgTIJpAEeOXzvVK2MY5wA" 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="_cwgTIppAEeOXzvVK2MY5wA" 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="_cwgTJJpAEeOXzvVK2MY5wA" 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="_cwgTJppAEeOXzvVK2MY5wA" 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="_cwgTKJpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwgTLZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgTKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgTKppAEeOXzvVK2MY5wA" 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="_cwgTLZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwgTLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgTL5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwgTMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgTMZpAEeOXzvVK2MY5wA" 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="_cwgTM5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwgTNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgTNZpAEeOXzvVK2MY5wA" 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="_cwgTN5pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwgTLZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgTOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgTOZpAEeOXzvVK2MY5wA" 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="_cwgTPJpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwgTPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgTPppAEeOXzvVK2MY5wA" 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="_cwgTQJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_6HP2YFKXEeOx7rZCF5ouIw/268" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgTQZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwgTRppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgTQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgTQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTRJpAEeOXzvVK2MY5wA" 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="_cwgTRppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwgTR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgTSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTSZpAEeOXzvVK2MY5wA" 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="_cwgTSppAEeOXzvVK2MY5wA" 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="_cwgTTJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwgTTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgTTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTT5pAEeOXzvVK2MY5wA" 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="_cwgTUJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwgTXppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgTUppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgTVJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgTVppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwgTY5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgTWJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgTWppAEeOXzvVK2MY5wA" 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="_cwgTXJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwgTXppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwgTX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwgTYJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwgTYZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwgTYppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwgTY5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwgTZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwgTZZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwgTZppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwgTZ5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgTaJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwgTaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgTappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTa5pAEeOXzvVK2MY5wA" 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="_cwgTbJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgTbppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgTcJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwgTaJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgTcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgTcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTc5pAEeOXzvVK2MY5wA" 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="_cwgTdZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwgTaJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgTdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgTd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTeJpAEeOXzvVK2MY5wA" 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="_cwgTeppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwgTe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgTfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTfZpAEeOXzvVK2MY5wA" 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="_cwgTfppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgTgJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgTgppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwgTeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgTg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgThZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwgTeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgThppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgTiJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwgTeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgTiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgTi5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwgTRppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgTjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgTjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTjppAEeOXzvVK2MY5wA" 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="_cwgTkJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwgTkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgTkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTk5pAEeOXzvVK2MY5wA" 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="_cwgTlJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgTlppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgTmJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwgTmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgTmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTm5pAEeOXzvVK2MY5wA" 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="_cwgTnJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgTnppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgToJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwgTmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgToZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgToppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTo5pAEeOXzvVK2MY5wA" 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="_cwgTpZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwgTmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgTpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgTp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTqJpAEeOXzvVK2MY5wA" 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="_cwgTqppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwgTq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgTrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgTrZpAEeOXzvVK2MY5wA" 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="_cwgTrppAEeOXzvVK2MY5wA" 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="_cwgTsJpAEeOXzvVK2MY5wA" 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="_cwgTsppAEeOXzvVK2MY5wA" 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="_cwgTtJpAEeOXzvVK2MY5wA" 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="_cwgTtppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwgTu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgTt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgTuJpAEeOXzvVK2MY5wA" 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="_cwgTu5pAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwgTvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgTvZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwgTvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgTv5pAEeOXzvVK2MY5wA" 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="_cwgTwZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwgTwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgTw5pAEeOXzvVK2MY5wA" 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="_cwgTxZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwgTu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgTxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgTx5pAEeOXzvVK2MY5wA" 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="_cwgTyppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwgTy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgTzJpAEeOXzvVK2MY5wA" 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="_cwgTzppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_lR-3sFKXEeOx7rZCF5ouIw/267" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgTz5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwgT1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgT0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgT0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgT0ppAEeOXzvVK2MY5wA" 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="_cwgT1JpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwgT1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgT1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgT15pAEeOXzvVK2MY5wA" 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="_cwgT2JpAEeOXzvVK2MY5wA" 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="_cwgT2ppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwgT25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgT3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgT3ZpAEeOXzvVK2MY5wA" 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="_cwgT3ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwgT7JpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgT4JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgT4ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgT5JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwgT8ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgT5ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgT6JpAEeOXzvVK2MY5wA" 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="_cwgT6ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwgT7JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwgT7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwgT7ppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwgT75pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwgT8JpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwgT8ZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwgT8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwgT85pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwgT9JpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwgT9ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgT9ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwgT95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgT-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgT-ZpAEeOXzvVK2MY5wA" 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="_cwgT-ppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgT_JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgT_ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwgT9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgT_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUAZpAEeOXzvVK2MY5wA" 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="_cwgUA5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwgT9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgUBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUBppAEeOXzvVK2MY5wA" 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="_cwgUCJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwgUCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUC5pAEeOXzvVK2MY5wA" 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="_cwgUDJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgUDppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgUEJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwgUCJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgUEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgUE5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwgUCJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgUFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgUFppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwgUCJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgUF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgUGZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwgT1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgUGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUHJpAEeOXzvVK2MY5wA" 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="_cwgUHppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwgUH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUIZpAEeOXzvVK2MY5wA" 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="_cwgUIppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgUJJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgUJppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwgUJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUKZpAEeOXzvVK2MY5wA" 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="_cwgUKppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgULJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgULppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwgUJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgUL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUMZpAEeOXzvVK2MY5wA" 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="_cwgUM5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwgUJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgUNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUNppAEeOXzvVK2MY5wA" 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="_cwgUOJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwgUOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUO5pAEeOXzvVK2MY5wA" 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="_cwgUPJpAEeOXzvVK2MY5wA" 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="_cwgUPppAEeOXzvVK2MY5wA" 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="_cwgUQJpAEeOXzvVK2MY5wA" 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="_cwgUQppAEeOXzvVK2MY5wA" 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="_cwgURJpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwgUSZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgURZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgURppAEeOXzvVK2MY5wA" 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="_cwgUSZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwgUSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgUS5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwgUTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgUTZpAEeOXzvVK2MY5wA" 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="_cwgUT5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwgUUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgUUZpAEeOXzvVK2MY5wA" 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="_cwgUU5pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwgUSZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgUVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgUVZpAEeOXzvVK2MY5wA" 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="_cwgUWJpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwgUWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgUWppAEeOXzvVK2MY5wA" 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="_cwgUXJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_LxFQUFKXEeOx7rZCF5ouIw/266" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgUXZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwgUYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgUXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUYJpAEeOXzvVK2MY5wA" 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="_cwgUYppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwgUY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUZZpAEeOXzvVK2MY5wA" 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="_cwgUZppAEeOXzvVK2MY5wA" 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="_cwgUaJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwgUaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUa5pAEeOXzvVK2MY5wA" 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="_cwgUbJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwgUeppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgUbppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgUcJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgUcppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwgUf5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgUdJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgUdppAEeOXzvVK2MY5wA" 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="_cwgUeJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwgUeppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwgUe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwgUfJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwgUfZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwgUfppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwgUf5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwgUgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwgUgZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwgUgppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwgUg5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgUhJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwgUhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUh5pAEeOXzvVK2MY5wA" 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="_cwgUiJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgUippAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgUjJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwgUhJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgUjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUj5pAEeOXzvVK2MY5wA" 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="_cwgUkZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwgUhJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgUkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUlJpAEeOXzvVK2MY5wA" 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="_cwgUlppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwgUl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUmZpAEeOXzvVK2MY5wA" 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="_cwgUmppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgUnJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgUnppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwgUlppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgUn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgUoZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwgUlppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgUoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgUpJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwgUlppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgUpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgUp5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwgUYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgUqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUqppAEeOXzvVK2MY5wA" 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="_cwgUrJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwgUrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUr5pAEeOXzvVK2MY5wA" 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="_cwgUsJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgUsppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgUtJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwgUtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUt5pAEeOXzvVK2MY5wA" 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="_cwgUuJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgUuppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgUvJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwgUtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgUvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUv5pAEeOXzvVK2MY5wA" 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="_cwgUwZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwgUtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgUwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUxJpAEeOXzvVK2MY5wA" 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="_cwgUxppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwgUx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgUyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgUyZpAEeOXzvVK2MY5wA" 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="_cwgUyppAEeOXzvVK2MY5wA" 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="_cwgUzJpAEeOXzvVK2MY5wA" 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="_cwgUzppAEeOXzvVK2MY5wA" 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="_cwgU0JpAEeOXzvVK2MY5wA" 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="_cwgU0ppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwgU15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgU05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgU1JpAEeOXzvVK2MY5wA" 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="_cwgU15pAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwgU2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgU2ZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwgU2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgU25pAEeOXzvVK2MY5wA" 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="_cwgU3ZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwgU3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgU35pAEeOXzvVK2MY5wA" 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="_cwgU4ZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwgU15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgU4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgU45pAEeOXzvVK2MY5wA" 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="_cwgU5ppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwgU55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgU6JpAEeOXzvVK2MY5wA" 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="_cwgU6ppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_IX340FKXEeOx7rZCF5ouIw/265" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgU65pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwgU8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgU7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgU7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgU7ppAEeOXzvVK2MY5wA" 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="_cwgU8JpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwgU8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgU8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgU85pAEeOXzvVK2MY5wA" 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="_cwgU9JpAEeOXzvVK2MY5wA" 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="_cwgU9ppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwgU95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgU-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgU-ZpAEeOXzvVK2MY5wA" 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="_cwgU-ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwgVCJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgU_JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgU_ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgVAJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwgVDZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwgVAppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgVBJpAEeOXzvVK2MY5wA" 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="_cwgVBppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwgVCJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwgVCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwgVCppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwgVC5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwgVDJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwgVDZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwgVDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwgVD5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwgVEJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwgVEZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgVEppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwgVE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgVFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgVFZpAEeOXzvVK2MY5wA" 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="_cwgVFppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwgVGJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwgVGppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwgVEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgVG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgVHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgVHZpAEeOXzvVK2MY5wA" 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="_cwgVH5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwgVEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwgVIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwgVIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwgVIppAEeOXzvVK2MY5wA" 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="_cwgVJJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwg48JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg48ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg48ppAEeOXzvVK2MY5wA" 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="_cwg485pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg49ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg495pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwgVJJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg4-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg4-ppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwgVJJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg4-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg4_ZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwgVJJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg4_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg5AJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwgU8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg5AZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5AppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5A5pAEeOXzvVK2MY5wA" 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="_cwg5BZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwg5BppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5B5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5CJpAEeOXzvVK2MY5wA" 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="_cwg5CZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg5C5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg5DZpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwg5DppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5D5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5EJpAEeOXzvVK2MY5wA" 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="_cwg5EZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg5E5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg5FZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwg5DZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg5FppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5F5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5GJpAEeOXzvVK2MY5wA" 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="_cwg5GppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwg5DZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg5G5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5HJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5HZpAEeOXzvVK2MY5wA" 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="_cwg5H5pAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwg5IJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5IZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5IppAEeOXzvVK2MY5wA" 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="_cwg5I5pAEeOXzvVK2MY5wA" 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="_cwg5JZpAEeOXzvVK2MY5wA" 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="_cwg5J5pAEeOXzvVK2MY5wA" 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="_cwg5KZpAEeOXzvVK2MY5wA" 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="_cwg5K5pAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwg5MJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg5LJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg5LZpAEeOXzvVK2MY5wA" 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="_cwg5MJpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwg5MZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg5MppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwg5M5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg5NJpAEeOXzvVK2MY5wA" 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="_cwg5NppAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwg5N5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg5OJpAEeOXzvVK2MY5wA" 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="_cwg5OppAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwg5MJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg5O5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg5PJpAEeOXzvVK2MY5wA" 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="_cwg5P5pAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwg5QJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg5QZpAEeOXzvVK2MY5wA" 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="_cwg5Q5pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_oCPOQFKWEeOx7rZCF5ouIw/264" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg5RJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwg5SZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg5RZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5RppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5R5pAEeOXzvVK2MY5wA" 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="_cwg5SZpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwg5SppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5S5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5TJpAEeOXzvVK2MY5wA" 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="_cwg5TZpAEeOXzvVK2MY5wA" 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="_cwg5T5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwg5UJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5UZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5UppAEeOXzvVK2MY5wA" 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="_cwg5U5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwg5YZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg5VZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg5V5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg5WZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwg5ZppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg5W5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg5XZpAEeOXzvVK2MY5wA" 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="_cwg5X5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwg5YZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwg5YppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwg5Y5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwg5ZJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwg5ZZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwg5ZppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwg5Z5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwg5aJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwg5aZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwg5appAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg5a5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwg5bJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5bZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5bppAEeOXzvVK2MY5wA" 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="_cwg5b5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg5cZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg5c5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwg5a5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg5dJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5dZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5dppAEeOXzvVK2MY5wA" 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="_cwg5eJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwg5a5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg5eZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5eppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5e5pAEeOXzvVK2MY5wA" 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="_cwg5fZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwg5fppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5f5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5gJpAEeOXzvVK2MY5wA" 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="_cwg5gZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg5g5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg5hZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwg5fZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg5hppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg5iJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwg5fZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg5iZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg5i5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwg5fZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg5jJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg5jppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwg5SZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg5j5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5kJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5kZpAEeOXzvVK2MY5wA" 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="_cwg5k5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwg5lJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5lZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5lppAEeOXzvVK2MY5wA" 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="_cwg5l5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg5mZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg5m5pAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwg5nJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5nZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5nppAEeOXzvVK2MY5wA" 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="_cwg5n5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg5oZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg5o5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwg5m5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg5pJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5pZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5pppAEeOXzvVK2MY5wA" 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="_cwg5qJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwg5m5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg5qZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5qppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5q5pAEeOXzvVK2MY5wA" 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="_cwg5rZpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwg5rppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5r5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5sJpAEeOXzvVK2MY5wA" 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="_cwg5sZpAEeOXzvVK2MY5wA" 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="_cwg5s5pAEeOXzvVK2MY5wA" 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="_cwg5tZpAEeOXzvVK2MY5wA" 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="_cwg5t5pAEeOXzvVK2MY5wA" 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="_cwg5uZpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwg5vppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg5uppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg5u5pAEeOXzvVK2MY5wA" 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="_cwg5vppAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwg5v5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg5wJpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwg5wZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg5wppAEeOXzvVK2MY5wA" 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="_cwg5xJpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwg5xZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg5xppAEeOXzvVK2MY5wA" 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="_cwg5yJpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwg5vppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg5yZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg5yppAEeOXzvVK2MY5wA" 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="_cwg5zZpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwg5zppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg5z5pAEeOXzvVK2MY5wA" 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="_cwg50ZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_WyioEFKWEeOx7rZCF5ouIw/263" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg50ppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwg515pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg505pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg51JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg51ZpAEeOXzvVK2MY5wA" 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="_cwg515pAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwg52JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg52ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg52ppAEeOXzvVK2MY5wA" 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="_cwg525pAEeOXzvVK2MY5wA" 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="_cwg53ZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwg53ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg535pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg54JpAEeOXzvVK2MY5wA" 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="_cwg54ZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwg575pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg545pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg55ZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg555pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwg59JpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg56ZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg565pAEeOXzvVK2MY5wA" 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="_cwg57ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwg575pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwg58JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwg58ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwg58ppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwg585pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwg59JpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwg59ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwg59ppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwg595pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwg5-JpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg5-ZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwg5-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg5-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg5_JpAEeOXzvVK2MY5wA" 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="_cwg5_ZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg5_5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg6AZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwg5-ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6AppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6A5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6BJpAEeOXzvVK2MY5wA" 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="_cwg6BppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwg5-ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6B5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6CJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6CZpAEeOXzvVK2MY5wA" 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="_cwg6C5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwg6DJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6DZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6DppAEeOXzvVK2MY5wA" 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="_cwg6D5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg6EZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg6E5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwg6C5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6FJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg6FppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwg6C5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6F5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg6GZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwg6C5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6GppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg6HJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwg515pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6HZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6HppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6H5pAEeOXzvVK2MY5wA" 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="_cwg6IZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwg6IppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6I5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6JJpAEeOXzvVK2MY5wA" 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="_cwg6JZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg6J5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg6KZpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwg6KppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6K5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6LJpAEeOXzvVK2MY5wA" 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="_cwg6LZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg6L5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg6MZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwg6KZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6MppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6M5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6NJpAEeOXzvVK2MY5wA" 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="_cwg6NppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwg6KZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6N5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6OJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6OZpAEeOXzvVK2MY5wA" 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="_cwg6O5pAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwg6PJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6PZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6PppAEeOXzvVK2MY5wA" 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="_cwg6P5pAEeOXzvVK2MY5wA" 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="_cwg6QZpAEeOXzvVK2MY5wA" 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="_cwg6Q5pAEeOXzvVK2MY5wA" 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="_cwg6RZpAEeOXzvVK2MY5wA" 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="_cwg6R5pAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwg6TJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6SJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg6SZpAEeOXzvVK2MY5wA" 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="_cwg6TJpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwg6TZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg6TppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwg6T5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg6UJpAEeOXzvVK2MY5wA" 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="_cwg6UppAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwg6U5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg6VJpAEeOXzvVK2MY5wA" 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="_cwg6VppAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwg6TJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6V5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg6WJpAEeOXzvVK2MY5wA" 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="_cwg6W5pAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwg6XJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg6XZpAEeOXzvVK2MY5wA" 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="_cwg6X5pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_OGYlsFKVEeOx7rZCF5ouIw/262" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg6YJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwg6ZZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6YZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6YppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6Y5pAEeOXzvVK2MY5wA" 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="_cwg6ZZpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwg6ZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6Z5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6aJpAEeOXzvVK2MY5wA" 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="_cwg6aZpAEeOXzvVK2MY5wA" 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="_cwg6a5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwg6bJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6bZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6bppAEeOXzvVK2MY5wA" 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="_cwg6b5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwg6fZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg6cZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg6c5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg6dZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwg6gppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg6d5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg6eZpAEeOXzvVK2MY5wA" 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="_cwg6e5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwg6fZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwg6fppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwg6f5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwg6gJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwg6gZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwg6gppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwg6g5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwg6hJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwg6hZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwg6hppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg6h5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwg6iJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6iZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6ippAEeOXzvVK2MY5wA" 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="_cwg6i5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg6jZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg6j5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwg6h5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6kJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6kZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6kppAEeOXzvVK2MY5wA" 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="_cwg6lJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwg6h5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6lZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6lppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6l5pAEeOXzvVK2MY5wA" 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="_cwg6mZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwg6mppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6m5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6nJpAEeOXzvVK2MY5wA" 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="_cwg6nZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg6n5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg6oZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwg6mZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6oppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg6pJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwg6mZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6pZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg6p5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwg6mZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6qJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg6qppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwg6ZZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6q5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6rJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6rZpAEeOXzvVK2MY5wA" 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="_cwg6r5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwg6sJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6sZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6sppAEeOXzvVK2MY5wA" 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="_cwg6s5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg6tZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg6t5pAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwg6uJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6uZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6uppAEeOXzvVK2MY5wA" 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="_cwg6u5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg6vZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg6v5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwg6t5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6wJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6wZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6wppAEeOXzvVK2MY5wA" 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="_cwg6xJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwg6t5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg6xZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6xppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6x5pAEeOXzvVK2MY5wA" 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="_cwg6yZpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwg6yppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6y5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6zJpAEeOXzvVK2MY5wA" 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="_cwg6zZpAEeOXzvVK2MY5wA" 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="_cwg6z5pAEeOXzvVK2MY5wA" 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="_cwg60ZpAEeOXzvVK2MY5wA" 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="_cwg605pAEeOXzvVK2MY5wA" 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="_cwg61ZpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwg62ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg61ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg615pAEeOXzvVK2MY5wA" 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="_cwg62ppAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwg625pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg63JpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwg63ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg63ppAEeOXzvVK2MY5wA" 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="_cwg64JpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwg64ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg64ppAEeOXzvVK2MY5wA" 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="_cwg65JpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwg62ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg65ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg65ppAEeOXzvVK2MY5wA" 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="_cwg66ZpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwg66ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg665pAEeOXzvVK2MY5wA" 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="_cwg67ZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_IWayMFKVEeOx7rZCF5ouIw/261" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg67ppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwg685pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg675pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg68JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg68ZpAEeOXzvVK2MY5wA" 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="_cwg685pAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwg69JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg69ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg69ppAEeOXzvVK2MY5wA" 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="_cwg695pAEeOXzvVK2MY5wA" 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="_cwg6-ZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwg6-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg6-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg6_JpAEeOXzvVK2MY5wA" 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="_cwg6_ZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwg7C5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg6_5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg7AZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg7A5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwg7EJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg7BZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg7B5pAEeOXzvVK2MY5wA" 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="_cwg7CZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwg7C5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwg7DJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwg7DZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwg7DppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwg7D5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwg7EJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwg7EZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwg7EppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwg7E5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwg7FJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg7FZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwg7FppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7F5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7GJpAEeOXzvVK2MY5wA" 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="_cwg7GZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg7G5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg7HZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwg7FZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg7HppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7H5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7IJpAEeOXzvVK2MY5wA" 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="_cwg7IppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwg7FZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg7I5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7JJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7JZpAEeOXzvVK2MY5wA" 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="_cwg7J5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwg7KJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7KZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7KppAEeOXzvVK2MY5wA" 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="_cwg7K5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg7LZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg7L5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwg7J5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg7MJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg7MppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwg7J5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg7M5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg7NZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwg7J5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg7NppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg7OJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwg685pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg7OZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7OppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7O5pAEeOXzvVK2MY5wA" 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="_cwg7PZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwg7PppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7P5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7QJpAEeOXzvVK2MY5wA" 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="_cwg7QZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg7Q5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg7RZpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwg7RppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7R5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7SJpAEeOXzvVK2MY5wA" 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="_cwg7SZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg7S5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg7TZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwg7RZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg7TppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7T5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7UJpAEeOXzvVK2MY5wA" 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="_cwg7UppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwg7RZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg7U5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7VJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7VZpAEeOXzvVK2MY5wA" 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="_cwg7V5pAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwg7WJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7WZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7WppAEeOXzvVK2MY5wA" 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="_cwg7W5pAEeOXzvVK2MY5wA" 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="_cwg7XZpAEeOXzvVK2MY5wA" 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="_cwg7X5pAEeOXzvVK2MY5wA" 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="_cwg7YZpAEeOXzvVK2MY5wA" 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="_cwg7Y5pAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwg7aJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg7ZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg7ZZpAEeOXzvVK2MY5wA" 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="_cwg7aJpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwg7aZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg7appAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwg7a5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg7bJpAEeOXzvVK2MY5wA" 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="_cwg7bppAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwg7b5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg7cJpAEeOXzvVK2MY5wA" 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="_cwg7cppAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwg7aJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg7c5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg7dJpAEeOXzvVK2MY5wA" 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="_cwg7d5pAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwg7eJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg7eZpAEeOXzvVK2MY5wA" 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="_cwg7e5pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_BzcNYFKVEeOx7rZCF5ouIw/260" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg7fJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwg7gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg7fZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7fppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7f5pAEeOXzvVK2MY5wA" 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="_cwg7gZpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwg7gppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7g5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7hJpAEeOXzvVK2MY5wA" 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="_cwg7hZpAEeOXzvVK2MY5wA" 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="_cwg7h5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwg7iJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7iZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7ippAEeOXzvVK2MY5wA" 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="_cwg7i5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwg7mZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg7jZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg7j5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg7kZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwg7nppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg7k5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg7lZpAEeOXzvVK2MY5wA" 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="_cwg7l5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwg7mZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwg7mppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwg7m5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwg7nJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwg7nZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwg7nppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwg7n5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwg7oJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwg7oZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwg7oppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg7o5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwg7pJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7pZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7pppAEeOXzvVK2MY5wA" 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="_cwg7p5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg7qZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg7q5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwg7o5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg7rJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7rZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7rppAEeOXzvVK2MY5wA" 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="_cwg7sJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwg7o5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg7sZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7sppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7s5pAEeOXzvVK2MY5wA" 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="_cwg7tZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwg7tppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7t5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7uJpAEeOXzvVK2MY5wA" 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="_cwg7uZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg7u5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg7vZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwg7tZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg7vppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg7wJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwg7tZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg7wZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg7w5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwg7tZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg7xJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg7xppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwg7gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg7x5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7yJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7yZpAEeOXzvVK2MY5wA" 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="_cwg7y5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwg7zJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg7zZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg7zppAEeOXzvVK2MY5wA" 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="_cwg7z5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg70ZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg705pAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwg71JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg71ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg71ppAEeOXzvVK2MY5wA" 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="_cwg715pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg72ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg725pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwg705pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg73JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg73ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg73ppAEeOXzvVK2MY5wA" 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="_cwg74JpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwg705pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg74ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg74ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg745pAEeOXzvVK2MY5wA" 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="_cwg75ZpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwg75ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg755pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg76JpAEeOXzvVK2MY5wA" 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="_cwg76ZpAEeOXzvVK2MY5wA" 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="_cwg765pAEeOXzvVK2MY5wA" 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="_cwg77ZpAEeOXzvVK2MY5wA" 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="_cwg775pAEeOXzvVK2MY5wA" 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="_cwg78ZpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwg79ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg78ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg785pAEeOXzvVK2MY5wA" 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="_cwg79ppAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwg795pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg7-JpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwg7-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg7-ppAEeOXzvVK2MY5wA" 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="_cwg7_JpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwg7_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg7_ppAEeOXzvVK2MY5wA" 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="_cwg8AJpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwg79ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg8AZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg8AppAEeOXzvVK2MY5wA" 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="_cwg8BZpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwg8BppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg8B5pAEeOXzvVK2MY5wA" 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="_cwg8CZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_4dIV4FFCEeOTpJem-j11Mg/259" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg8CppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwg8D5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg8C5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg8DJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg8DZpAEeOXzvVK2MY5wA" 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="_cwg8D5pAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwg8EJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg8EZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg8EppAEeOXzvVK2MY5wA" 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="_cwg8E5pAEeOXzvVK2MY5wA" 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="_cwg8FZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwg8FppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg8F5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg8GJpAEeOXzvVK2MY5wA" 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="_cwg8GZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwg8J5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg8G5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg8HZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg8H5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwg8LJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg8IZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg8I5pAEeOXzvVK2MY5wA" 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="_cwg8JZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwg8J5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwg8KJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwg8KZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwg8KppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwg8K5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwg8LJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwg8LZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwg8LppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwg8L5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwg8MJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg8MZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwg8MppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg8M5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg8NJpAEeOXzvVK2MY5wA" 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="_cwg8NZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg8N5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg8OZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwg8MZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg8OppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg8O5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg8PJpAEeOXzvVK2MY5wA" 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="_cwg8PppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwg8MZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg8P5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg8QJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg8QZpAEeOXzvVK2MY5wA" 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="_cwg8Q5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwg8RJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg8RZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg8RppAEeOXzvVK2MY5wA" 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="_cwg8R5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg8SZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg8S5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwg8Q5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg8TJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg8TppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwg8Q5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg8T5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg8UZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwg8Q5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg8UppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg8VJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwg8D5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg8VZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg8VppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg8V5pAEeOXzvVK2MY5wA" 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="_cwg8WZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwg8WppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg8W5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg8XJpAEeOXzvVK2MY5wA" 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="_cwg8XZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwg8X5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg8YZpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwg8YppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg8Y5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg8ZJpAEeOXzvVK2MY5wA" 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="_cwg8ZZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwg8Z5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwg8aZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwg8YZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg8appAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg8a5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg8bJpAEeOXzvVK2MY5wA" 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="_cwg8bppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwg8YZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwg8b5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg8cJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg8cZpAEeOXzvVK2MY5wA" 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="_cwg8c5pAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwg8dJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwg8dZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwg8dppAEeOXzvVK2MY5wA" 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="_cwhgAJpAEeOXzvVK2MY5wA" 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="_cwhgAppAEeOXzvVK2MY5wA" 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="_cwhgBJpAEeOXzvVK2MY5wA" 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="_cwhgBppAEeOXzvVK2MY5wA" 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="_cwhgCJpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwhgDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhgCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhgCppAEeOXzvVK2MY5wA" 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="_cwhgDZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwhgDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhgD5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwhgEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhgEZpAEeOXzvVK2MY5wA" 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="_cwhgE5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwhgFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhgFZpAEeOXzvVK2MY5wA" 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="_cwhgF5pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwhgDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhgGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhgGZpAEeOXzvVK2MY5wA" 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="_cwhgHJpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwhgHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhgHppAEeOXzvVK2MY5wA" 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="_cwhgIJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_t_Kb0FE6EeOu0u1cSFHSAw/258" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhgIZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwhgJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhgIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhgI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhgJJpAEeOXzvVK2MY5wA" 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="_cwhgJppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwhgJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhgKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhgKZpAEeOXzvVK2MY5wA" 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="_cwhgKppAEeOXzvVK2MY5wA" 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="_cwhgLJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwhgLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhgLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhgL5pAEeOXzvVK2MY5wA" 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="_cwhgMJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwhgPppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhgMppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhgNJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhgNppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwhgQ5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhgOJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhgOppAEeOXzvVK2MY5wA" 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="_cwhgPJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwhgPppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwhgP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwhgQJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwhgQZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwhgQppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwhgQ5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwhgRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwhgRZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwhgRppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwhgR5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhgSJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwhgSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhgSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhgS5pAEeOXzvVK2MY5wA" 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="_cwhgTJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhgTppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhgUJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwhgSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhgUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhgUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhgU5pAEeOXzvVK2MY5wA" 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="_cwhgVZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwhgSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhgVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhgV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhgWJpAEeOXzvVK2MY5wA" 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="_cwhgWppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwhgW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhgXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhgXZpAEeOXzvVK2MY5wA" 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="_cwhgXppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhgYJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhgYppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwhgWppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhgY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhgZZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwhgWppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhgZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhgaJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwhgWppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhgaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhga5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwhgJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhgbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhgbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhgbppAEeOXzvVK2MY5wA" 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="_cwhgcJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwhgcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhgcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhgc5pAEeOXzvVK2MY5wA" 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="_cwhgdJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhgdppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhgeJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwhgeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhgeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhge5pAEeOXzvVK2MY5wA" 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="_cwhgfJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhgfppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhggJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwhgeJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhggZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhggppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhgg5pAEeOXzvVK2MY5wA" 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="_cwhghZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwhgeJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhghppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhgh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhgiJpAEeOXzvVK2MY5wA" 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="_cwhgippAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwhgi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhgjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhgjZpAEeOXzvVK2MY5wA" 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="_cwhgjppAEeOXzvVK2MY5wA" 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="_cwhgkJpAEeOXzvVK2MY5wA" 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="_cwhgkppAEeOXzvVK2MY5wA" 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="_cwhglJpAEeOXzvVK2MY5wA" 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="_cwhglppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwhgn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhgl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhgmJpAEeOXzvVK2MY5wA" 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="_cwhgmppAEeOXzvVK2MY5wA" 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="_cwhgnJpAEeOXzvVK2MY5wA" 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="_cwhgn5pAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwhgoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhgoZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwhgoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhgo5pAEeOXzvVK2MY5wA" 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="_cwhgpZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwhgpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhgp5pAEeOXzvVK2MY5wA" 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="_cwhgqZpAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwhgn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhgqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhgq5pAEeOXzvVK2MY5wA" 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="_cwhgrppAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwhgr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhgsJpAEeOXzvVK2MY5wA" 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="_cwhgsppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_tYdlAFE2EeOwrOe2LUshRA/257" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhgs5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwhguJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhgtJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhgtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhgtppAEeOXzvVK2MY5wA" 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="_cwhguJpAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwhguZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhguppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhgu5pAEeOXzvVK2MY5wA" 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="_cwhgvJpAEeOXzvVK2MY5wA" 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="_cwhgvppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwhgv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhgwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhgwZpAEeOXzvVK2MY5wA" 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="_cwhgwppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwhg0JpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhgxJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhgxppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhgyJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwhg1ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhgyppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhgzJpAEeOXzvVK2MY5wA" 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="_cwhgzppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwhg0JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwhg0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwhg0ppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwhg05pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwhg1JpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwhg1ZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwhg1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwhg15pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwhg2JpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwhg2ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhg2ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwhg25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhg3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhg3ZpAEeOXzvVK2MY5wA" 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="_cwhg3ppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhg4JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhg4ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwhg2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhg45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhg5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhg5ZpAEeOXzvVK2MY5wA" 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="_cwhg55pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwhg2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhg6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhg6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhg6ppAEeOXzvVK2MY5wA" 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="_cwhg7JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwhg7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhg7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhg75pAEeOXzvVK2MY5wA" 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="_cwhg8JpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhg8ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhg9JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwhg7JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhg9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhg95pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwhg7JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhg-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhg-ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwhg7JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhg-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhg_ZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwhguJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhg_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhg_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhAJpAEeOXzvVK2MY5wA" 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="_cwhhAppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwhhA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhhBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhBZpAEeOXzvVK2MY5wA" 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="_cwhhBppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhhCJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhhCppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwhhC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhhDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhDZpAEeOXzvVK2MY5wA" 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="_cwhhDppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhhEJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhhEppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwhhCppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhhE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhhFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhFZpAEeOXzvVK2MY5wA" 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="_cwhhF5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwhhCppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhhGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhhGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhGppAEeOXzvVK2MY5wA" 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="_cwhhHJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwhhHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhhHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhH5pAEeOXzvVK2MY5wA" 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="_cwhhIJpAEeOXzvVK2MY5wA" 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="_cwhhIppAEeOXzvVK2MY5wA" 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="_cwhhJJpAEeOXzvVK2MY5wA" 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="_cwhhJppAEeOXzvVK2MY5wA" 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="_cwhhKJpAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwhhMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhhKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhhKppAEeOXzvVK2MY5wA" 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="_cwhhLJpAEeOXzvVK2MY5wA" 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="_cwhhLppAEeOXzvVK2MY5wA" 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="_cwhhMZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwhhMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhhM5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwhhNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhhNZpAEeOXzvVK2MY5wA" 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="_cwhhN5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwhhOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhhOZpAEeOXzvVK2MY5wA" 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="_cwhhO5pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwhhMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhhPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhhPZpAEeOXzvVK2MY5wA" 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="_cwhhQJpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwhhQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhhQppAEeOXzvVK2MY5wA" 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="_cwhhRJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_cT4KAFEzEeOwrOe2LUshRA/256" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhhRZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwhhSppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhhRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhhR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhSJpAEeOXzvVK2MY5wA" 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="_cwhhSppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwhhS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhhTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhTZpAEeOXzvVK2MY5wA" 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="_cwhhTppAEeOXzvVK2MY5wA" 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="_cwhhUJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwhhUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhhUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhU5pAEeOXzvVK2MY5wA" 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="_cwhhVJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwhhYppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhhVppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhhWJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhhWppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwhhZ5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhhXJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhhXppAEeOXzvVK2MY5wA" 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="_cwhhYJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwhhYppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwhhY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwhhZJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwhhZZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwhhZppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwhhZ5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwhhaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwhhaZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwhhappAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwhha5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhhbJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwhhbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhhbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhb5pAEeOXzvVK2MY5wA" 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="_cwhhcJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhhcppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhhdJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwhhbJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhhdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhhdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhd5pAEeOXzvVK2MY5wA" 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="_cwhheZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwhhbJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhheppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhhe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhfJpAEeOXzvVK2MY5wA" 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="_cwhhfppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwhhf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhhgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhgZpAEeOXzvVK2MY5wA" 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="_cwhhgppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhhhJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhhhppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwhhfppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhhh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhhiZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwhhfppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhhippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhhjJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwhhfppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhhjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhhj5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwhhSppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhhkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhhkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhkppAEeOXzvVK2MY5wA" 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="_cwhhlJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwhhlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhhlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhl5pAEeOXzvVK2MY5wA" 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="_cwhhmJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhhmppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhhnJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwhhnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhhnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhn5pAEeOXzvVK2MY5wA" 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="_cwhhoJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhhoppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhhpJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwhhnJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhhpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhhpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhp5pAEeOXzvVK2MY5wA" 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="_cwhhqZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwhhnJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhhqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhhq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhrJpAEeOXzvVK2MY5wA" 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="_cwhhrppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwhhr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhhsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhhsZpAEeOXzvVK2MY5wA" 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="_cwhhsppAEeOXzvVK2MY5wA" 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="_cwhhtJpAEeOXzvVK2MY5wA" 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="_cwhhtppAEeOXzvVK2MY5wA" 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="_cwhhuJpAEeOXzvVK2MY5wA" 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="_cwhhuppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwhhxZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhhu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhhvJpAEeOXzvVK2MY5wA" 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="_cwhhvppAEeOXzvVK2MY5wA" 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="_cwhhwJpAEeOXzvVK2MY5wA" 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="_cwhhwppAEeOXzvVK2MY5wA" 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="_cwhhxZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwhhxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhhx5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwhhyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhhyZpAEeOXzvVK2MY5wA" 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="_cwhhy5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwhhzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhhzZpAEeOXzvVK2MY5wA" 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="_cwhhz5pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwhhxZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhh0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhh0ZpAEeOXzvVK2MY5wA" 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="_cwhh1JpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwhh1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhh1ppAEeOXzvVK2MY5wA" 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="_cwhh2JpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_KDk34FEyEeOwrOe2LUshRA/255" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhh2ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwhh3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhh2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhh25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhh3JpAEeOXzvVK2MY5wA" 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="_cwhh3ppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwhh35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhh4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhh4ZpAEeOXzvVK2MY5wA" 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="_cwhh4ppAEeOXzvVK2MY5wA" 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="_cwhh5JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwhh5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhh5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhh55pAEeOXzvVK2MY5wA" 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="_cwhh6JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwhh9ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhh6ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhh7JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhh7ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwhh-5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhh8JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhh8ppAEeOXzvVK2MY5wA" 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="_cwhh9JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwhh9ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwhh95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwhh-JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwhh-ZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwhh-ppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwhh-5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwhh_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwhh_ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwhh_ppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwhh_5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhiAJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwhiAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhiAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhiA5pAEeOXzvVK2MY5wA" 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="_cwhiBJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhiBppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhiCJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwhiAJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhiCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhiCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhiC5pAEeOXzvVK2MY5wA" 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="_cwhiDZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwhiAJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhiDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhiD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhiEJpAEeOXzvVK2MY5wA" 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="_cwhiEppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwhiE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhiFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhiFZpAEeOXzvVK2MY5wA" 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="_cwhiFppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhiGJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhiGppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwhiEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhiG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhiHZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwhiEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhiHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhiIJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwhiEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhiIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhiI5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwhh3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhiJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhiJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhiJppAEeOXzvVK2MY5wA" 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="_cwhiKJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwhiKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhiKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhiK5pAEeOXzvVK2MY5wA" 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="_cwhiLJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhiLppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhiMJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwhiMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhiMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhiM5pAEeOXzvVK2MY5wA" 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="_cwhiNJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhiNppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhiOJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwhiMJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhiOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhiOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhiO5pAEeOXzvVK2MY5wA" 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="_cwhiPZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwhiMJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhiPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhiP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhiQJpAEeOXzvVK2MY5wA" 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="_cwhiQppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwhiQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhiRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhiRZpAEeOXzvVK2MY5wA" 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="_cwhiRppAEeOXzvVK2MY5wA" 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="_cwhiSJpAEeOXzvVK2MY5wA" 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="_cwhiSppAEeOXzvVK2MY5wA" 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="_cwhiTJpAEeOXzvVK2MY5wA" 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="_cwhiTppAEeOXzvVK2MY5wA" name="main_computation" eSuperTypes="_cwhiWZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhiT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhiUJpAEeOXzvVK2MY5wA" 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="_cwhiUppAEeOXzvVK2MY5wA" 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="_cwhiVJpAEeOXzvVK2MY5wA" 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="_cwhiVppAEeOXzvVK2MY5wA" 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="_cwhiWZpAEeOXzvVK2MY5wA" name="computation" abstract="true">
          <eAnnotations xmi:id="_cwhiWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GsppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhiW5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwhiXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhiXZpAEeOXzvVK2MY5wA" 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="_cwhiX5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwhiYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhiYZpAEeOXzvVK2MY5wA" 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="_cwhiY5pAEeOXzvVK2MY5wA" name="iterative_computation" eSuperTypes="_cwhiWZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhiZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gl5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhiZZpAEeOXzvVK2MY5wA" 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="_cwhiaJpAEeOXzvVK2MY5wA" name="iterative_object">
          <eAnnotations xmi:id="_cwhiaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GpppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhiappAEeOXzvVK2MY5wA" 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="_cwhibJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_d5Cv0E6oEeOec59rrEPEZQ/254" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhibZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwhicppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhibppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhib5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhicJpAEeOXzvVK2MY5wA" 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="_cwhicppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwhic5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhidJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhidZpAEeOXzvVK2MY5wA" 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="_cwhidppAEeOXzvVK2MY5wA" 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="_cwhieJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwhieZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhieppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhie5pAEeOXzvVK2MY5wA" 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="_cwhifJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwhiippAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhifppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhigJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhigppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwhij5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhihJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhihppAEeOXzvVK2MY5wA" 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="_cwhiiJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwhiippAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwhii5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwhijJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwhijZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwhijppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwhij5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwhikJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwhikZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwhikppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwhik5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhilJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwhilZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhilppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhil5pAEeOXzvVK2MY5wA" 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="_cwhimJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhimppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhinJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwhilJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhinZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhinppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhin5pAEeOXzvVK2MY5wA" 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="_cwhioZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwhilJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhioppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhio5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhipJpAEeOXzvVK2MY5wA" 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="_cwhipppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwhip5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhiqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhiqZpAEeOXzvVK2MY5wA" 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="_cwhiqppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhirJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhirppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwhipppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhir5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhisZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwhipppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhisppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhitJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwhipppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhitZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhit5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwhicppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhiuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhiuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhiuppAEeOXzvVK2MY5wA" 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="_cwhivJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwhivZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhivppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhiv5pAEeOXzvVK2MY5wA" 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="_cwhiwJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhiwppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhixJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwhixZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhixppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhix5pAEeOXzvVK2MY5wA" 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="_cwhiyJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhiyppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhizJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwhixJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhizZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhizppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhiz5pAEeOXzvVK2MY5wA" 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="_cwhi0ZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwhixJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhi0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhi05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhi1JpAEeOXzvVK2MY5wA" 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="_cwhi1ppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwhi15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhi2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhi2ZpAEeOXzvVK2MY5wA" 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="_cwhi2ppAEeOXzvVK2MY5wA" 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="_cwhi3JpAEeOXzvVK2MY5wA" 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="_cwhi3ppAEeOXzvVK2MY5wA" 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="_cwhi4JpAEeOXzvVK2MY5wA" 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="_cwhi4ppAEeOXzvVK2MY5wA" name="computation">
          <eAnnotations xmi:id="_cwhi45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhi5JpAEeOXzvVK2MY5wA" 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="_cwhi5ppAEeOXzvVK2MY5wA" 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="_cwhi6JpAEeOXzvVK2MY5wA" 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="_cwhi6ppAEeOXzvVK2MY5wA" 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="_cwhi7JpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwhi7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhi7ppAEeOXzvVK2MY5wA" 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="_cwhi8JpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwhi8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhi8ppAEeOXzvVK2MY5wA" 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="_cwhi9JpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_AtVDkE6oEeOec59rrEPEZQ/253" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhi9ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwhi-ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhi9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhi95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhi-JpAEeOXzvVK2MY5wA" 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="_cwhi-ppAEeOXzvVK2MY5wA" name="operation" abstract="true">
          <eAnnotations xmi:id="_cwhi-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhi_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhi_ZpAEeOXzvVK2MY5wA" 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="_cwhi_ppAEeOXzvVK2MY5wA" 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="_cwhjAJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwhjAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhjAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhjA5pAEeOXzvVK2MY5wA" 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="_cwhjBJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwhjEppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhjBppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhjCJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhjCppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwhjF5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhjDJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhjDppAEeOXzvVK2MY5wA" 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="_cwhjEJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwhjEppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwhjE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwhjFJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwhjFZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwhjFppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwhjF5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwhjGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwhjGZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwhjGppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwhjG5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhjHJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwhjHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhjHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhjH5pAEeOXzvVK2MY5wA" 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="_cwhjIJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhjIppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhjJJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwhjHJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhjJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhjJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhjJ5pAEeOXzvVK2MY5wA" 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="_cwhjKZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwhjHJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhjKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhjK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhjLJpAEeOXzvVK2MY5wA" 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="_cwhjLppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwhjL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhjMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhjMZpAEeOXzvVK2MY5wA" 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="_cwhjMppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhjNJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhjNppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwhjLppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhjN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhjOZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwhjLppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhjOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhjPJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwhjLppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhjPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhjP5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwhi-ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhjQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhjQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhjQppAEeOXzvVK2MY5wA" 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="_cwhjRJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwhjRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhjRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhjR5pAEeOXzvVK2MY5wA" 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="_cwhjSJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwhjSppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhjTJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwhjTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhjTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhjT5pAEeOXzvVK2MY5wA" 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="_cwhjUJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwhjUppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwhjVJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwhjTJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhjVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhjVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhjV5pAEeOXzvVK2MY5wA" 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="_cwhjWZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwhjTJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwhjWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhjW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhjXJpAEeOXzvVK2MY5wA" 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="_cwhjXppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwhjX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwhjYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwhjYZpAEeOXzvVK2MY5wA" 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="_cwhjYppAEeOXzvVK2MY5wA" 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="_cwhjZJpAEeOXzvVK2MY5wA" 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="_cwhjZppAEeOXzvVK2MY5wA" 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="_cwhjaJpAEeOXzvVK2MY5wA" 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="_cwhjappAEeOXzvVK2MY5wA" name="computation">
          <eAnnotations xmi:id="_cwhja5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiHEJpAEeOXzvVK2MY5wA" 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="_cwiHEppAEeOXzvVK2MY5wA" 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="_cwiHFJpAEeOXzvVK2MY5wA" 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="_cwiHFppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwiHF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiHGJpAEeOXzvVK2MY5wA" 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="_cwiHGppAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwiHG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiHHJpAEeOXzvVK2MY5wA" 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="_cwiHHppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_bAQGkE4gEeO1tu-9EBJwrw/252" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiHH5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwiHJJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiHIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiHIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiHIppAEeOXzvVK2MY5wA" 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="_cwiHJJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwiHJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiHJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiHJ5pAEeOXzvVK2MY5wA" 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="_cwiHKJpAEeOXzvVK2MY5wA" 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="_cwiHKppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwiHK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiHLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiHLZpAEeOXzvVK2MY5wA" 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="_cwiHLppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwiHPJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiHMJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiHMppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiHNJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwiHQZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiHNppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiHOJpAEeOXzvVK2MY5wA" 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="_cwiHOppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiHPJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwiHPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiHPppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiHP5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwiHQJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiHQZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwiHQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiHQ5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiHRJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwiHRZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiHRppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwiHR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiHSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiHSZpAEeOXzvVK2MY5wA" 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="_cwiHSppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiHTJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiHTppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwiHRppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiHT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiHUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiHUZpAEeOXzvVK2MY5wA" 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="_cwiHU5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwiHRppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiHVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiHVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiHVppAEeOXzvVK2MY5wA" 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="_cwiHWJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwiHWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiHWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiHW5pAEeOXzvVK2MY5wA" 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="_cwiHXJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiHXppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiHYJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwiHWJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiHYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiHY5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwiHWJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiHZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiHZppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwiHWJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiHZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiHaZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwiHJJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiHappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiHa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiHbJpAEeOXzvVK2MY5wA" 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="_cwiHbppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwiHb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiHcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiHcZpAEeOXzvVK2MY5wA" 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="_cwiHcppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiHdJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiHdppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwiHd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiHeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiHeZpAEeOXzvVK2MY5wA" 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="_cwiHeppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiHfJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiHfppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwiHdppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiHf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiHgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiHgZpAEeOXzvVK2MY5wA" 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="_cwiHg5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwiHdppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiHhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiHhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiHhppAEeOXzvVK2MY5wA" 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="_cwiHiJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwiHiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiHippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiHi5pAEeOXzvVK2MY5wA" 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="_cwiHjJpAEeOXzvVK2MY5wA" 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="_cwiHjppAEeOXzvVK2MY5wA" 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="_cwiHkJpAEeOXzvVK2MY5wA" 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="_cwiHkppAEeOXzvVK2MY5wA" 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="_cwiHlJpAEeOXzvVK2MY5wA" name="computation">
          <eAnnotations xmi:id="_cwiHlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiHlppAEeOXzvVK2MY5wA" 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="_cwiHmJpAEeOXzvVK2MY5wA" 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="_cwiHmppAEeOXzvVK2MY5wA" 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="_cwiHnJpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwiHnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiHnppAEeOXzvVK2MY5wA" 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="_cwiHoJpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwiHoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiHoppAEeOXzvVK2MY5wA" 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="_cwiHpJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_hOH64E4cEeO1tu-9EBJwrw/251" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiHpZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwiHqppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiHpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiHp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiHqJpAEeOXzvVK2MY5wA" 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="_cwiHqppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwiHq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiHrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiHrZpAEeOXzvVK2MY5wA" 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="_cwiHrppAEeOXzvVK2MY5wA" 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="_cwiHsJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwiHsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiHsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiHs5pAEeOXzvVK2MY5wA" 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="_cwiHtJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwiHwppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiHtppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiHuJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiHuppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwiHx5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiHvJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiHvppAEeOXzvVK2MY5wA" 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="_cwiHwJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiHwppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwiHw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiHxJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiHxZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwiHxppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiHx5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwiHyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiHyZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiHyppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwiHy5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiHzJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwiHzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiHzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiHz5pAEeOXzvVK2MY5wA" 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="_cwiH0JpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiH0ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiH1JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwiHzJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiH1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiH1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiH15pAEeOXzvVK2MY5wA" 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="_cwiH2ZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwiHzJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiH2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiH25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiH3JpAEeOXzvVK2MY5wA" 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="_cwiH3ppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwiH35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiH4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiH4ZpAEeOXzvVK2MY5wA" 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="_cwiH4ppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiH5JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiH5ppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwiH3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiH55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiH6ZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwiH3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiH6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiH7JpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwiH3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiH7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiH75pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwiHqppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiH8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiH8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiH8ppAEeOXzvVK2MY5wA" 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="_cwiH9JpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwiH9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiH9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiH95pAEeOXzvVK2MY5wA" 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="_cwiH-JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiH-ppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiH_JpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwiH_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiH_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiH_5pAEeOXzvVK2MY5wA" 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="_cwiIAJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiIAppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiIBJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwiH_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiIBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiIBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiIB5pAEeOXzvVK2MY5wA" 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="_cwiICZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwiH_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiICppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiIC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiIDJpAEeOXzvVK2MY5wA" 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="_cwiIDppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwiID5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiIEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiIEZpAEeOXzvVK2MY5wA" 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="_cwiIEppAEeOXzvVK2MY5wA" 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="_cwiIFJpAEeOXzvVK2MY5wA" 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="_cwiIFppAEeOXzvVK2MY5wA" 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="_cwiIGJpAEeOXzvVK2MY5wA" 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="_cwiIGppAEeOXzvVK2MY5wA" name="computation">
          <eAnnotations xmi:id="_cwiIG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiIHJpAEeOXzvVK2MY5wA" 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="_cwiIHppAEeOXzvVK2MY5wA" 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="_cwiIIJpAEeOXzvVK2MY5wA" 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="_cwiIIppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwiII5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiIJJpAEeOXzvVK2MY5wA" 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="_cwiIJppAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwiIJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiIKJpAEeOXzvVK2MY5wA" 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="_cwiIKppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_hXMMwE4bEeO1tu-9EBJwrw/250" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiIK5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwiIMJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiILJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiILZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiILppAEeOXzvVK2MY5wA" 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="_cwiIMJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwiIMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiIMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiIM5pAEeOXzvVK2MY5wA" 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="_cwiINJpAEeOXzvVK2MY5wA" 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="_cwiINppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwiIN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiIOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiIOZpAEeOXzvVK2MY5wA" 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="_cwiIOppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwiISJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiIPJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiIPppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiIQJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwiITZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiIQppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiIRJpAEeOXzvVK2MY5wA" 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="_cwiIRppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiISJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwiISZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiISppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiIS5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwiITJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiITZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwiITppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiIT5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiIUJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwiIUZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiIUppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwiIU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiIVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiIVZpAEeOXzvVK2MY5wA" 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="_cwiIVppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiIWJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiIWppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwiIUppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiIW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiIXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiIXZpAEeOXzvVK2MY5wA" 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="_cwiIX5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwiIUppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiIYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiIYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiIYppAEeOXzvVK2MY5wA" 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="_cwiIZJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwiIZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiIZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiIZ5pAEeOXzvVK2MY5wA" 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="_cwiIaJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiIappAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiIbJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwiIZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiIbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiIb5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwiIZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiIcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiIcppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwiIZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiIc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiIdZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwiIMJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiIdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiId5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiIeJpAEeOXzvVK2MY5wA" 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="_cwiIeppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwiIe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiIfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiIfZpAEeOXzvVK2MY5wA" 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="_cwiIfppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiIgJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiIgppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwiIg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiIhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiIhZpAEeOXzvVK2MY5wA" 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="_cwiIhppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiIiJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiIippAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwiIgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiIi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiIjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiIjZpAEeOXzvVK2MY5wA" 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="_cwiIj5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwiIgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiIkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiIkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiIkppAEeOXzvVK2MY5wA" 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="_cwiIlJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwiIlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiIlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiIl5pAEeOXzvVK2MY5wA" 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="_cwiImJpAEeOXzvVK2MY5wA" 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="_cwiImppAEeOXzvVK2MY5wA" 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="_cwiInJpAEeOXzvVK2MY5wA" 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="_cwiInppAEeOXzvVK2MY5wA" 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="_cwiIoJpAEeOXzvVK2MY5wA" name="computation">
          <eAnnotations xmi:id="_cwiIoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiIoppAEeOXzvVK2MY5wA" 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="_cwiIpJpAEeOXzvVK2MY5wA" 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="_cwiIpppAEeOXzvVK2MY5wA" 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="_cwiIqJpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwiIqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiIqppAEeOXzvVK2MY5wA" 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="_cwiIrJpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwiIrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiIrppAEeOXzvVK2MY5wA" 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="_cwiIsJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_fGZ14E4bEeO1tu-9EBJwrw/249" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiIsZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwiItppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiIsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiIs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiItJpAEeOXzvVK2MY5wA" 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="_cwiItppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwiIt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiIuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiIuZpAEeOXzvVK2MY5wA" 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="_cwiIuppAEeOXzvVK2MY5wA" 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="_cwiIvJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwiIvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiIvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiIv5pAEeOXzvVK2MY5wA" 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="_cwiIwJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwiIzppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiIwppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiIxJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiIxppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwiI05pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiIyJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiIyppAEeOXzvVK2MY5wA" 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="_cwiIzJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiIzppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwiIz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiI0JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiI0ZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwiI0ppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiI05pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwiI1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiI1ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiI1ppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwiI15pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiI2JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwiI2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiI2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiI25pAEeOXzvVK2MY5wA" 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="_cwiI3JpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiI3ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiI4JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwiI2JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiI4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiI4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiI45pAEeOXzvVK2MY5wA" 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="_cwiI5ZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwiI2JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiI5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiI55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiI6JpAEeOXzvVK2MY5wA" 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="_cwiI6ppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwiI65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiI7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiI7ZpAEeOXzvVK2MY5wA" 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="_cwiI7ppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiI8JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiI8ppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwiI6ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiI85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiI9ZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwiI6ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiI9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiI-JpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwiI6ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiI-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiI-5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwiItppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiI_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiI_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiI_ppAEeOXzvVK2MY5wA" 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="_cwiJAJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwiJAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJA5pAEeOXzvVK2MY5wA" 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="_cwiJBJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiJBppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiJCJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwiJCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJC5pAEeOXzvVK2MY5wA" 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="_cwiJDJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiJDppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiJEJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwiJCJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiJEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJE5pAEeOXzvVK2MY5wA" 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="_cwiJFZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwiJCJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiJFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJGJpAEeOXzvVK2MY5wA" 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="_cwiJGppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwiJG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJHZpAEeOXzvVK2MY5wA" 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="_cwiJHppAEeOXzvVK2MY5wA" 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="_cwiJIJpAEeOXzvVK2MY5wA" 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="_cwiJIppAEeOXzvVK2MY5wA" 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="_cwiJJJpAEeOXzvVK2MY5wA" 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="_cwiJJppAEeOXzvVK2MY5wA" name="computation">
          <eAnnotations xmi:id="_cwiJJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiJKJpAEeOXzvVK2MY5wA" 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="_cwiJKppAEeOXzvVK2MY5wA" 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="_cwiJLJpAEeOXzvVK2MY5wA" 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="_cwiJLppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwiJL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiJMJpAEeOXzvVK2MY5wA" 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="_cwiJMppAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwiJM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiJNJpAEeOXzvVK2MY5wA" 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="_cwiJNppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_CtSEME4bEeO1tu-9EBJwrw/248" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiJN5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwiJPJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiJOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJOppAEeOXzvVK2MY5wA" 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="_cwiJPJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwiJPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJP5pAEeOXzvVK2MY5wA" 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="_cwiJQJpAEeOXzvVK2MY5wA" 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="_cwiJQppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwiJQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJRZpAEeOXzvVK2MY5wA" 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="_cwiJRppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwiJVJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiJSJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiJSppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiJTJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwiJWZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiJTppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiJUJpAEeOXzvVK2MY5wA" 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="_cwiJUppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiJVJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwiJVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiJVppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiJV5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwiJWJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiJWZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwiJWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiJW5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiJXJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwiJXZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiJXppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwiJX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJYZpAEeOXzvVK2MY5wA" 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="_cwiJYppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiJZJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiJZppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwiJXppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiJZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJaZpAEeOXzvVK2MY5wA" 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="_cwiJa5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwiJXppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiJbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJbppAEeOXzvVK2MY5wA" 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="_cwiJcJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwiJcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJc5pAEeOXzvVK2MY5wA" 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="_cwiJdJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiJdppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiJeJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwiJcJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiJeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiJe5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwiJcJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiJfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiJfppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwiJcJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiJf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiJgZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwiJPJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiJgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJhJpAEeOXzvVK2MY5wA" 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="_cwiJhppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwiJh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJiZpAEeOXzvVK2MY5wA" 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="_cwiJippAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiJjJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiJjppAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwiJj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJkZpAEeOXzvVK2MY5wA" 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="_cwiJkppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiJlJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiJlppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwiJjppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiJl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJmZpAEeOXzvVK2MY5wA" 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="_cwiJm5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwiJjppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiJnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJnppAEeOXzvVK2MY5wA" 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="_cwiJoJpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwiJoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJo5pAEeOXzvVK2MY5wA" 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="_cwiJpJpAEeOXzvVK2MY5wA" 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="_cwiJpppAEeOXzvVK2MY5wA" 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="_cwiJqJpAEeOXzvVK2MY5wA" 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="_cwiJqppAEeOXzvVK2MY5wA" 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="_cwiJrJpAEeOXzvVK2MY5wA" name="computation">
          <eAnnotations xmi:id="_cwiJrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiJrppAEeOXzvVK2MY5wA" 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="_cwiJsJpAEeOXzvVK2MY5wA" 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="_cwiJsppAEeOXzvVK2MY5wA" 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="_cwiJtJpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwiJtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiJtppAEeOXzvVK2MY5wA" 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="_cwiJuJpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwiJuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiJuppAEeOXzvVK2MY5wA" 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="_cwiJvJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_8lEasE4YEeO1tu-9EBJwrw/247" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiJvZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwiJwppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiJvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJwJpAEeOXzvVK2MY5wA" 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="_cwiJwppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwiJw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJxZpAEeOXzvVK2MY5wA" 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="_cwiJxppAEeOXzvVK2MY5wA" 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="_cwiJyJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwiJyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJy5pAEeOXzvVK2MY5wA" 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="_cwiJzJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwiJ2ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiJzppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiJ0JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiJ0ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwiJ35pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiJ1JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiJ1ppAEeOXzvVK2MY5wA" 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="_cwiJ2JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiJ2ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwiJ25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiJ3JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiJ3ZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwiJ3ppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiJ35pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwiJ4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiJ4ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiJ4ppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwiJ45pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiJ5JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwiJ5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJ5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJ55pAEeOXzvVK2MY5wA" 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="_cwiJ6JpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiJ6ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiJ7JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwiJ5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiJ7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJ7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJ75pAEeOXzvVK2MY5wA" 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="_cwiJ8ZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwiJ5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiJ8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJ85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJ9JpAEeOXzvVK2MY5wA" 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="_cwiJ9ppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwiJ95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiJ-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiJ-ZpAEeOXzvVK2MY5wA" 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="_cwiJ-ppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiJ_JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiJ_ppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwiJ9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiJ_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiKAZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwiJ9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiKAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiKBJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwiJ9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiKBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiKB5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwiJwppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiKCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiKCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiKCppAEeOXzvVK2MY5wA" 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="_cwiKDJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwiKDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiKDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiKD5pAEeOXzvVK2MY5wA" 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="_cwiKEJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiKEppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiKFJpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwiKFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiKFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiKF5pAEeOXzvVK2MY5wA" 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="_cwiKGJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiKGppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiKHJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwiKFJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiKHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiKHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiKH5pAEeOXzvVK2MY5wA" 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="_cwiKIZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwiKFJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiKIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiKI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiKJJpAEeOXzvVK2MY5wA" 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="_cwiKJppAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwiKJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiKKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiKKZpAEeOXzvVK2MY5wA" 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="_cwiKKppAEeOXzvVK2MY5wA" 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="_cwiKLJpAEeOXzvVK2MY5wA" 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="_cwiKLppAEeOXzvVK2MY5wA" 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="_cwiKMJpAEeOXzvVK2MY5wA" 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="_cwiKMppAEeOXzvVK2MY5wA" name="computation">
          <eAnnotations xmi:id="_cwiKM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiKNJpAEeOXzvVK2MY5wA" 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="_cwiKNppAEeOXzvVK2MY5wA" 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="_cwiKOJpAEeOXzvVK2MY5wA" 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="_cwiKOppAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwiKO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiKPJpAEeOXzvVK2MY5wA" 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="_cwiKPppAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwiKP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiKQJpAEeOXzvVK2MY5wA" 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="_cwiKQppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_YpfkME4YEeO1tu-9EBJwrw/246" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiKQ5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwiKSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiKRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiKRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiKRppAEeOXzvVK2MY5wA" 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="_cwiKSJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwiKSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiKSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiuIJpAEeOXzvVK2MY5wA" 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="_cwiuIZpAEeOXzvVK2MY5wA" 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="_cwiuI5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwiuJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiuJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiuJppAEeOXzvVK2MY5wA" 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="_cwiuJ5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwiuNZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiuKZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiuK5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiuLZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwiuOppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiuL5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiuMZpAEeOXzvVK2MY5wA" 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="_cwiuM5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiuNZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwiuNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiuN5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiuOJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwiuOZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiuOppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwiuO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiuPJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiuPZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwiuPppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiuP5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwiuQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiuQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiuQppAEeOXzvVK2MY5wA" 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="_cwiuQ5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiuRZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiuR5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwiuP5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiuSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiuSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiuSppAEeOXzvVK2MY5wA" 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="_cwiuTJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwiuP5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiuTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiuTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiuT5pAEeOXzvVK2MY5wA" 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="_cwiuUZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwiuUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiuU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiuVJpAEeOXzvVK2MY5wA" 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="_cwiuVZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiuV5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiuWZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwiuUZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiuWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiuXJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwiuUZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiuXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiuX5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwiuUZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiuYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiuYppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwiKSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiuY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiuZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiuZZpAEeOXzvVK2MY5wA" 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="_cwiuZ5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwiuaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiuaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiuappAEeOXzvVK2MY5wA" 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="_cwiua5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiubZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiub5pAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwiucJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiucZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiucppAEeOXzvVK2MY5wA" 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="_cwiuc5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiudZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiud5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwiub5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiueJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiueZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiueppAEeOXzvVK2MY5wA" 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="_cwiufJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwiub5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiufZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiufppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiuf5pAEeOXzvVK2MY5wA" 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="_cwiugZpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwiugppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiug5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiuhJpAEeOXzvVK2MY5wA" 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="_cwiuhZpAEeOXzvVK2MY5wA" 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="_cwiuh5pAEeOXzvVK2MY5wA" 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="_cwiuiZpAEeOXzvVK2MY5wA" 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="_cwiui5pAEeOXzvVK2MY5wA" 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="_cwiujZpAEeOXzvVK2MY5wA" name="computation">
          <eAnnotations xmi:id="_cwiujppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiuj5pAEeOXzvVK2MY5wA" 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="_cwiukZpAEeOXzvVK2MY5wA" 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="_cwiuk5pAEeOXzvVK2MY5wA" 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="_cwiulZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwiulppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiul5pAEeOXzvVK2MY5wA" 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="_cwiumZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwiumppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwium5pAEeOXzvVK2MY5wA" 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="_cwiunZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_OpyEsE4WEeO1tu-9EBJwrw/245" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiunppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwiuo5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiun5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiuoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiuoZpAEeOXzvVK2MY5wA" 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="_cwiuo5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwiupJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiupZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiupppAEeOXzvVK2MY5wA" 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="_cwiup5pAEeOXzvVK2MY5wA" 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="_cwiuqZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwiuqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiuq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiurJpAEeOXzvVK2MY5wA" 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="_cwiurZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwiuu5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiur5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiusZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwius5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwiuwJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiutZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiut5pAEeOXzvVK2MY5wA" 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="_cwiuuZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiuu5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwiuvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiuvZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiuvppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwiuv5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiuwJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwiuwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiuwppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiuw5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwiuxJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiuxZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwiuxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiux5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiuyJpAEeOXzvVK2MY5wA" 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="_cwiuyZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiuy5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiuzZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwiuxZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiuzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiuz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiu0JpAEeOXzvVK2MY5wA" 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="_cwiu0ppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwiuxZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiu05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiu1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiu1ZpAEeOXzvVK2MY5wA" 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="_cwiu15pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwiu2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiu2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiu2ppAEeOXzvVK2MY5wA" 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="_cwiu25pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiu3ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiu35pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwiu15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiu4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiu4ppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwiu15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiu45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiu5ZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwiu15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiu5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiu6JpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwiuo5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiu6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiu6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiu65pAEeOXzvVK2MY5wA" 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="_cwiu7ZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwiu7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiu75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiu8JpAEeOXzvVK2MY5wA" 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="_cwiu8ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiu85pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiu9ZpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwiu9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiu95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiu-JpAEeOXzvVK2MY5wA" 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="_cwiu-ZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiu-5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiu_ZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwiu9ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiu_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiu_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivAJpAEeOXzvVK2MY5wA" 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="_cwivAppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwiu9ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwivA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwivBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivBZpAEeOXzvVK2MY5wA" 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="_cwivB5pAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwivCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwivCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivCppAEeOXzvVK2MY5wA" 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="_cwivC5pAEeOXzvVK2MY5wA" 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="_cwivDZpAEeOXzvVK2MY5wA" 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="_cwivD5pAEeOXzvVK2MY5wA" 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="_cwivEZpAEeOXzvVK2MY5wA" 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="_cwivE5pAEeOXzvVK2MY5wA" name="computation">
          <eAnnotations xmi:id="_cwivFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwivFZpAEeOXzvVK2MY5wA" 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="_cwivF5pAEeOXzvVK2MY5wA" 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="_cwivGZpAEeOXzvVK2MY5wA" 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="_cwivG5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwivHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwivHZpAEeOXzvVK2MY5wA" 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="_cwivH5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwivIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwivIZpAEeOXzvVK2MY5wA" 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="_cwivI5pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_pRY80E4TEeO1tu-9EBJwrw/244" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwivJJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwivKZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwivJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwivJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivJ5pAEeOXzvVK2MY5wA" 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="_cwivKZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwivKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwivK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivLJpAEeOXzvVK2MY5wA" 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="_cwivLZpAEeOXzvVK2MY5wA" 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="_cwivL5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwivMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwivMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivMppAEeOXzvVK2MY5wA" 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="_cwivM5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwivQZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwivNZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwivN5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwivOZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwivRppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwivO5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwivPZpAEeOXzvVK2MY5wA" 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="_cwivP5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwivQZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwivQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwivQ5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwivRJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwivRZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwivRppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwivR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwivSJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwivSZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwivSppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwivS5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwivTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwivTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivTppAEeOXzvVK2MY5wA" 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="_cwivT5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwivUZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwivU5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwivS5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwivVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwivVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivVppAEeOXzvVK2MY5wA" 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="_cwivWJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwivS5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwivWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwivWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivW5pAEeOXzvVK2MY5wA" 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="_cwivXZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwivXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwivX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivYJpAEeOXzvVK2MY5wA" 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="_cwivYZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwivY5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwivZZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwivXZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwivZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwivaJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwivXZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwivaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiva5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwivXZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwivbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwivbppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwivKZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwivb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwivcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivcZpAEeOXzvVK2MY5wA" 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="_cwivc5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwivdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwivdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivdppAEeOXzvVK2MY5wA" 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="_cwivd5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiveZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwive5pAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwivfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwivfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivfppAEeOXzvVK2MY5wA" 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="_cwivf5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwivgZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwivg5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwive5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwivhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwivhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivhppAEeOXzvVK2MY5wA" 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="_cwiviJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwive5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiviZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwivippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivi5pAEeOXzvVK2MY5wA" 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="_cwivjZpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwivjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwivj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivkJpAEeOXzvVK2MY5wA" 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="_cwivkZpAEeOXzvVK2MY5wA" 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="_cwivk5pAEeOXzvVK2MY5wA" 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="_cwivlZpAEeOXzvVK2MY5wA" 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="_cwivl5pAEeOXzvVK2MY5wA" 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="_cwivmZpAEeOXzvVK2MY5wA" name="computation">
          <eAnnotations xmi:id="_cwivmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwivm5pAEeOXzvVK2MY5wA" 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="_cwivnZpAEeOXzvVK2MY5wA" 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="_cwivn5pAEeOXzvVK2MY5wA" 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="_cwivoZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwivoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwivo5pAEeOXzvVK2MY5wA" 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="_cwivpZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwivpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwivp5pAEeOXzvVK2MY5wA" 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="_cwivqZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_jpmAIE4OEeO1tu-9EBJwrw/243" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwivqppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwivr5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwivq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwivrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivrZpAEeOXzvVK2MY5wA" 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="_cwivr5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwivsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwivsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivsppAEeOXzvVK2MY5wA" 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="_cwivs5pAEeOXzvVK2MY5wA" 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="_cwivtZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwivtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwivt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwivuJpAEeOXzvVK2MY5wA" 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="_cwivuZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwivx5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwivu5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwivvZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwivv5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwivzJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwivwZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwivw5pAEeOXzvVK2MY5wA" 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="_cwivxZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwivx5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwivyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwivyZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwivyppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwivy5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwivzJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwivzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwivzppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwivz5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwiv0JpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiv0ZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwiv0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiv05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiv1JpAEeOXzvVK2MY5wA" 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="_cwiv1ZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiv15pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiv2ZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwiv0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiv2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiv25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiv3JpAEeOXzvVK2MY5wA" 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="_cwiv3ppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwiv0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiv35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiv4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiv4ZpAEeOXzvVK2MY5wA" 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="_cwiv45pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwiv5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiv5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiv5ppAEeOXzvVK2MY5wA" 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="_cwiv55pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiv6ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiv65pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwiv45pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiv7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiv7ppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwiv45pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiv75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiv8ZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwiv45pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiv8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiv9JpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwivr5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiv9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiv9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiv95pAEeOXzvVK2MY5wA" 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="_cwiv-ZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwiv-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiv-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiv_JpAEeOXzvVK2MY5wA" 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="_cwiv_ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiv_5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiwAZpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwiwAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwBJpAEeOXzvVK2MY5wA" 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="_cwiwBZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiwB5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiwCZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwiwAZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiwCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwDJpAEeOXzvVK2MY5wA" 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="_cwiwDppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwiwAZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiwD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwEZpAEeOXzvVK2MY5wA" 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="_cwiwE5pAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwiwFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwFppAEeOXzvVK2MY5wA" 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="_cwiwF5pAEeOXzvVK2MY5wA" 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="_cwiwGZpAEeOXzvVK2MY5wA" 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="_cwiwG5pAEeOXzvVK2MY5wA" 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="_cwiwHZpAEeOXzvVK2MY5wA" 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="_cwiwH5pAEeOXzvVK2MY5wA" name="computation">
          <eAnnotations xmi:id="_cwiwIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiwIZpAEeOXzvVK2MY5wA" 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="_cwiwI5pAEeOXzvVK2MY5wA" 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="_cwiwJZpAEeOXzvVK2MY5wA" 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="_cwiwJ5pAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwiwKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiwKZpAEeOXzvVK2MY5wA" 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="_cwiwK5pAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwiwLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiwLZpAEeOXzvVK2MY5wA" 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="_cwiwL5pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_culkkE4IEeOm4cpPTMVSiw/242" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiwMJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwiwNZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiwMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwM5pAEeOXzvVK2MY5wA" 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="_cwiwNZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwiwNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwOJpAEeOXzvVK2MY5wA" 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="_cwiwOZpAEeOXzvVK2MY5wA" 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="_cwiwO5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwiwPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwPppAEeOXzvVK2MY5wA" 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="_cwiwP5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwiwTZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiwQZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiwQ5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiwRZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwiwUppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiwR5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiwSZpAEeOXzvVK2MY5wA" 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="_cwiwS5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiwTZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwiwTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiwT5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiwUJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwiwUZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiwUppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwiwU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiwVJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiwVZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwiwVppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiwV5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwiwWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwWppAEeOXzvVK2MY5wA" 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="_cwiwW5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiwXZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiwX5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwiwV5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiwYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwYppAEeOXzvVK2MY5wA" 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="_cwiwZJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwiwV5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiwZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwZ5pAEeOXzvVK2MY5wA" 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="_cwiwaZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwiwappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwbJpAEeOXzvVK2MY5wA" 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="_cwiwbZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiwb5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiwcZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwiwaZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiwcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiwdJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwiwaZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiwdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiwd5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwiwaZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiweJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiweppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwiwNZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiwe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwfZpAEeOXzvVK2MY5wA" 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="_cwiwf5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwiwgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwgppAEeOXzvVK2MY5wA" 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="_cwiwg5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiwhZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiwh5pAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwiwiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwippAEeOXzvVK2MY5wA" 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="_cwiwi5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiwjZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiwj5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwiwh5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiwkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwkppAEeOXzvVK2MY5wA" 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="_cwiwlJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwiwh5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiwlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwl5pAEeOXzvVK2MY5wA" 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="_cwiwmZpAEeOXzvVK2MY5wA" name="flow_controller">
          <eAnnotations xmi:id="_cwiwmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwnJpAEeOXzvVK2MY5wA" 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="_cwiwnZpAEeOXzvVK2MY5wA" 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="_cwiwn5pAEeOXzvVK2MY5wA" 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="_cwiwoZpAEeOXzvVK2MY5wA" 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="_cwiwo5pAEeOXzvVK2MY5wA" 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="_cwiwpZpAEeOXzvVK2MY5wA" name="computation">
          <eAnnotations xmi:id="_cwiwpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiwp5pAEeOXzvVK2MY5wA" 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="_cwiwqZpAEeOXzvVK2MY5wA" 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="_cwiwq5pAEeOXzvVK2MY5wA" 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="_cwiwrZpAEeOXzvVK2MY5wA" name="decision">
          <eAnnotations xmi:id="_cwiwrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiwr5pAEeOXzvVK2MY5wA" 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="_cwiwsZpAEeOXzvVK2MY5wA" name="data_buffer">
          <eAnnotations xmi:id="_cwiwsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiws5pAEeOXzvVK2MY5wA" 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="_cwiwtZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_vXyw0E4HEeOm4cpPTMVSiw/241" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiwtppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwiwu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiwt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwuZpAEeOXzvVK2MY5wA" 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="_cwiwu5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwiwvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiwvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwvppAEeOXzvVK2MY5wA" 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="_cwiwv5pAEeOXzvVK2MY5wA" 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="_cwiwwZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwiwwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiww5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiwxJpAEeOXzvVK2MY5wA" 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="_cwiwxZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwiw05pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiwx5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiwyZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiwy5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwiw2JpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwiwzZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiwz5pAEeOXzvVK2MY5wA" 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="_cwiw0ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiw05pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwiw1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiw1ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiw1ppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwiw15pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwiw2JpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwiw2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwiw2ppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwiw25pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwiw3JpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiw3ZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwiw3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiw35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiw4JpAEeOXzvVK2MY5wA" 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="_cwiw4ZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiw45pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiw5ZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwiw3ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiw5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiw55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiw6JpAEeOXzvVK2MY5wA" 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="_cwiw6ppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwiw3ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiw65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiw7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiw7ZpAEeOXzvVK2MY5wA" 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="_cwiw75pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwiw8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwiw8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwiw8ppAEeOXzvVK2MY5wA" 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="_cwiw85pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwiw9ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiw95pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwiw75pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiw-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiw-ppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwiw75pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiw-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwiw_ZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwiw75pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwiw_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwixAJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwiwu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwixAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwixAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwixA5pAEeOXzvVK2MY5wA" 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="_cwixBZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwixBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwixB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwixCJpAEeOXzvVK2MY5wA" 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="_cwixCZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwixC5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwixDZpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwixDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwixD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwixEJpAEeOXzvVK2MY5wA" 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="_cwixEZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwixE5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwixFZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwixDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwixFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwixF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwixGJpAEeOXzvVK2MY5wA" 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="_cwixGppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwixDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwixG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwixHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwixHZpAEeOXzvVK2MY5wA" 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="_cwixH5pAEeOXzvVK2MY5wA" name="FlowController">
          <eAnnotations xmi:id="_cwixIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwixIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwixIppAEeOXzvVK2MY5wA" 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="_cwixI5pAEeOXzvVK2MY5wA" 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="_cwixJZpAEeOXzvVK2MY5wA" 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="_cwixJ5pAEeOXzvVK2MY5wA" 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="_cwixKZpAEeOXzvVK2MY5wA" 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="_cwixK5pAEeOXzvVK2MY5wA" name="Computation">
          <eAnnotations xmi:id="_cwixLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwixLZpAEeOXzvVK2MY5wA" 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="_cwixL5pAEeOXzvVK2MY5wA" 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="_cwixMZpAEeOXzvVK2MY5wA" 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="_cwixM5pAEeOXzvVK2MY5wA" name="Condition">
          <eAnnotations xmi:id="_cwixNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwixNZpAEeOXzvVK2MY5wA" 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="_cwixN5pAEeOXzvVK2MY5wA" name="DataBuffer">
          <eAnnotations xmi:id="_cwixOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwixOZpAEeOXzvVK2MY5wA" 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="_cwixO5pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_sEvEoE4HEeOm4cpPTMVSiw/240" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwixPJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwixQZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwixPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwixPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwixP5pAEeOXzvVK2MY5wA" 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="_cwixQZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwixQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwixQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwixRJpAEeOXzvVK2MY5wA" 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="_cwixRZpAEeOXzvVK2MY5wA" 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="_cwixR5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwixSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwixSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwixSppAEeOXzvVK2MY5wA" 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="_cwixS5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwixWZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwixTZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwixT5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwixUZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwixXppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwixU5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwixVZpAEeOXzvVK2MY5wA" 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="_cwixV5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwixWZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwixWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwixW5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwixXJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwixXZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwixXppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwixX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwixYJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwixYZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwixYppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwixY5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwixZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwixZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwixZppAEeOXzvVK2MY5wA" 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="_cwixZ5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwixaZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwixa5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwixY5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwixbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwixbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwixbppAEeOXzvVK2MY5wA" 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="_cwixcJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwixY5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwixcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwixcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwixc5pAEeOXzvVK2MY5wA" 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="_cwixdZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwixdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwixd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwixeJpAEeOXzvVK2MY5wA" 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="_cwixeZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwixe5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwixfZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwixdZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwixfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwixgJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwixdZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwixgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwixg5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwixdZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwixhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwixhppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwixQZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwixh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwixiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwixiZpAEeOXzvVK2MY5wA" 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="_cwixi5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwjVMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjVMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjVMppAEeOXzvVK2MY5wA" 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="_cwjVM5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjVNZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjVN5pAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwjVOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjVOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjVOppAEeOXzvVK2MY5wA" 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="_cwjVO5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjVPZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjVP5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwjVN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjVQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjVQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjVQppAEeOXzvVK2MY5wA" 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="_cwjVRJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwjVN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjVRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjVRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjVR5pAEeOXzvVK2MY5wA" 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="_cwjVSZpAEeOXzvVK2MY5wA" name="FlowController">
          <eAnnotations xmi:id="_cwjVSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjVS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjVTJpAEeOXzvVK2MY5wA" 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="_cwjVTZpAEeOXzvVK2MY5wA" 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="_cwjVT5pAEeOXzvVK2MY5wA" 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="_cwjVUZpAEeOXzvVK2MY5wA" 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="_cwjVU5pAEeOXzvVK2MY5wA" 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="_cwjVVZpAEeOXzvVK2MY5wA" name="Computation">
          <eAnnotations xmi:id="_cwjVVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjVV5pAEeOXzvVK2MY5wA" 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="_cwjVWZpAEeOXzvVK2MY5wA" 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="_cwjVW5pAEeOXzvVK2MY5wA" 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="_cwjVXZpAEeOXzvVK2MY5wA" name="Condition">
          <eAnnotations xmi:id="_cwjVXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjVX5pAEeOXzvVK2MY5wA" 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="_cwjVYZpAEeOXzvVK2MY5wA" name="DataBuffer">
          <eAnnotations xmi:id="_cwjVYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjVY5pAEeOXzvVK2MY5wA" 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="_cwjVZZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_nM_SkE4HEeOm4cpPTMVSiw/239" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjVZppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwjVa5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjVZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjVaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjVaZpAEeOXzvVK2MY5wA" 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="_cwjVa5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwjVbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjVbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjVbppAEeOXzvVK2MY5wA" 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="_cwjVb5pAEeOXzvVK2MY5wA" 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="_cwjVcZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwjVcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjVc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjVdJpAEeOXzvVK2MY5wA" 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="_cwjVdZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwjVg5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjVd5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjVeZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjVe5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwjViJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjVfZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjVf5pAEeOXzvVK2MY5wA" 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="_cwjVgZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwjVg5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwjVhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwjVhZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwjVhppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwjVh5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwjViJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwjViZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwjVippAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwjVi5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwjVjJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjVjZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwjVjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjVj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjVkJpAEeOXzvVK2MY5wA" 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="_cwjVkZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjVk5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjVlZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwjVjZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjVlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjVl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjVmJpAEeOXzvVK2MY5wA" 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="_cwjVmppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwjVjZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjVm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjVnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjVnZpAEeOXzvVK2MY5wA" 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="_cwjVn5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwjVoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjVoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjVoppAEeOXzvVK2MY5wA" 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="_cwjVo5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjVpZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjVp5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwjVn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjVqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjVqppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwjVn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjVq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjVrZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwjVn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjVrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjVsJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwjVa5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjVsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjVsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjVs5pAEeOXzvVK2MY5wA" 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="_cwjVtZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwjVtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjVt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjVuJpAEeOXzvVK2MY5wA" 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="_cwjVuZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjVu5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjVvZpAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwjVvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjVv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjVwJpAEeOXzvVK2MY5wA" 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="_cwjVwZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjVw5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjVxZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwjVvZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjVxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjVx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjVyJpAEeOXzvVK2MY5wA" 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="_cwjVyppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwjVvZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjVy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjVzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjVzZpAEeOXzvVK2MY5wA" 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="_cwjVz5pAEeOXzvVK2MY5wA" name="FlowController">
          <eAnnotations xmi:id="_cwjV0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjV0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjV0ppAEeOXzvVK2MY5wA" 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="_cwjV05pAEeOXzvVK2MY5wA" 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="_cwjV1ZpAEeOXzvVK2MY5wA" 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="_cwjV15pAEeOXzvVK2MY5wA" 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="_cwjV2ZpAEeOXzvVK2MY5wA" 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="_cwjV25pAEeOXzvVK2MY5wA" name="Computation">
          <eAnnotations xmi:id="_cwjV3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjV3ZpAEeOXzvVK2MY5wA" 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="_cwjV35pAEeOXzvVK2MY5wA" 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="_cwjV4ZpAEeOXzvVK2MY5wA" 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="_cwjV45pAEeOXzvVK2MY5wA" name="Condition">
          <eAnnotations xmi:id="_cwjV5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gf5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjV5ZpAEeOXzvVK2MY5wA" 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="_cwjV55pAEeOXzvVK2MY5wA" name="DataBuffer">
          <eAnnotations xmi:id="_cwjV6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Gi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjV6ZpAEeOXzvVK2MY5wA" 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="_cwjV65pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_KXKlgE4BEeOm4cpPTMVSiw/238" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjV7JpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwjV8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjV7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjV7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjV75pAEeOXzvVK2MY5wA" 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="_cwjV8ZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwjV8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjV85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjV9JpAEeOXzvVK2MY5wA" 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="_cwjV9ZpAEeOXzvVK2MY5wA" 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="_cwjV95pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwjV-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjV-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjV-ppAEeOXzvVK2MY5wA" 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="_cwjV-5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwjWCZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjV_ZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjV_5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjWAZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwjWDppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjWA5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjWBZpAEeOXzvVK2MY5wA" 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="_cwjWB5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwjWCZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwjWCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwjWC5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwjWDJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwjWDZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwjWDppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwjWD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwjWEJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwjWEZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwjWEppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjWE5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwjWFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWFppAEeOXzvVK2MY5wA" 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="_cwjWF5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjWGZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjWG5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwjWE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjWHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWHppAEeOXzvVK2MY5wA" 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="_cwjWIJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwjWE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjWIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWI5pAEeOXzvVK2MY5wA" 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="_cwjWJZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwjWJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWKJpAEeOXzvVK2MY5wA" 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="_cwjWKZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjWK5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjWLZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwjWJZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjWLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjWMJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwjWJZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjWMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjWM5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwjWJZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjWNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjWNppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwjV8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjWN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWOZpAEeOXzvVK2MY5wA" 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="_cwjWO5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwjWPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWPppAEeOXzvVK2MY5wA" 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="_cwjWP5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjWQZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjWQ5pAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwjWRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWRppAEeOXzvVK2MY5wA" 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="_cwjWR5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjWSZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjWS5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwjWQ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjWTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWTppAEeOXzvVK2MY5wA" 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="_cwjWUJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwjWQ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjWUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWU5pAEeOXzvVK2MY5wA" 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="_cwjWVZpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwjWVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWWJpAEeOXzvVK2MY5wA" 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="_cwjWWZpAEeOXzvVK2MY5wA" 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="_cwjWW5pAEeOXzvVK2MY5wA" 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="_cwjWXZpAEeOXzvVK2MY5wA" 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="_cwjWX5pAEeOXzvVK2MY5wA" 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="_cwjWYZpAEeOXzvVK2MY5wA" 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="_cwjWY5pAEeOXzvVK2MY5wA" 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="_cwjWZZpAEeOXzvVK2MY5wA" 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="_cwjWZ5pAEeOXzvVK2MY5wA" 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="_cwjWaZpAEeOXzvVK2MY5wA" 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="_cwjWa5pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_jCXwcE4AEeOm4cpPTMVSiw/237" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjWbJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwjWcZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjWbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWb5pAEeOXzvVK2MY5wA" 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="_cwjWcZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwjWcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWdJpAEeOXzvVK2MY5wA" 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="_cwjWdZpAEeOXzvVK2MY5wA" 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="_cwjWd5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwjWeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWeppAEeOXzvVK2MY5wA" 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="_cwjWe5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwjWiZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjWfZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjWf5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjWgZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwjWjppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjWg5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjWhZpAEeOXzvVK2MY5wA" 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="_cwjWh5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwjWiZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwjWippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwjWi5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwjWjJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwjWjZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwjWjppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwjWj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwjWkJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwjWkZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwjWkppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjWk5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwjWlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWlppAEeOXzvVK2MY5wA" 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="_cwjWl5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjWmZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjWm5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwjWk5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjWnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWnppAEeOXzvVK2MY5wA" 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="_cwjWoJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwjWk5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjWoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWo5pAEeOXzvVK2MY5wA" 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="_cwjWpZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwjWpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWqJpAEeOXzvVK2MY5wA" 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="_cwjWqZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjWq5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjWrZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwjWpZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjWrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjWsJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwjWpZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjWsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjWs5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwjWpZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjWtJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjWtppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwjWcZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjWt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWuZpAEeOXzvVK2MY5wA" 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="_cwjWu5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwjWvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWvppAEeOXzvVK2MY5wA" 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="_cwjWv5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjWwZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjWw5pAEeOXzvVK2MY5wA" name="logical_expression" abstract="true">
          <eAnnotations xmi:id="_cwjWxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWxppAEeOXzvVK2MY5wA" 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="_cwjWx5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjWyZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjWy5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwjWw5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjWzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjWzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjWzppAEeOXzvVK2MY5wA" 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="_cwjW0JpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwjWw5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjW0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjW0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjW05pAEeOXzvVK2MY5wA" 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="_cwjW1ZpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwjW1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjW15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjW2JpAEeOXzvVK2MY5wA" 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="_cwjW2ZpAEeOXzvVK2MY5wA" 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="_cwjW25pAEeOXzvVK2MY5wA" 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="_cwjW3ZpAEeOXzvVK2MY5wA" 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="_cwjW35pAEeOXzvVK2MY5wA" 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="_cwjW4ZpAEeOXzvVK2MY5wA" 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="_cwjW45pAEeOXzvVK2MY5wA" 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="_cwjW5ZpAEeOXzvVK2MY5wA" 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="_cwjW55pAEeOXzvVK2MY5wA" 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="_cwjW6ZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_Iq8wwE4AEeOm4cpPTMVSiw/236" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjW6ppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwjW75pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjW65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjW7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjW7ZpAEeOXzvVK2MY5wA" 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="_cwjW75pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwjW8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjW8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjW8ppAEeOXzvVK2MY5wA" 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="_cwjW85pAEeOXzvVK2MY5wA" 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="_cwjW9ZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwjW9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjW95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjW-JpAEeOXzvVK2MY5wA" 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="_cwjW-ZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwjXB5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjW-5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjW_ZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjW_5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwjXDJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjXAZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjXA5pAEeOXzvVK2MY5wA" 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="_cwjXBZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwjXB5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwjXCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwjXCZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwjXCppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwjXC5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwjXDJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwjXDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwjXDppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwjXD5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwjXEJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjXEZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwjXEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXFJpAEeOXzvVK2MY5wA" 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="_cwjXFZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjXF5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjXGZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwjXEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjXGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXHJpAEeOXzvVK2MY5wA" 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="_cwjXHppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwjXEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjXH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXIZpAEeOXzvVK2MY5wA" 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="_cwjXI5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwjXJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXJppAEeOXzvVK2MY5wA" 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="_cwjXJ5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjXKZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjXK5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwjXI5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjXLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjXLppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwjXI5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjXL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjXMZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwjXI5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjXMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjXNJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwjW75pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjXNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXN5pAEeOXzvVK2MY5wA" 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="_cwjXOZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwjXOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXPJpAEeOXzvVK2MY5wA" 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="_cwjXPZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjXP5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjXQZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwjXQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXRJpAEeOXzvVK2MY5wA" 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="_cwjXRZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjXR5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjXSZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwjXQZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjXSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXTJpAEeOXzvVK2MY5wA" 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="_cwjXTppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwjXQZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjXT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXUZpAEeOXzvVK2MY5wA" 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="_cwjXU5pAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwjXVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXVppAEeOXzvVK2MY5wA" 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="_cwjXV5pAEeOXzvVK2MY5wA" 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="_cwjXWZpAEeOXzvVK2MY5wA" 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="_cwjXW5pAEeOXzvVK2MY5wA" 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="_cwjXXZpAEeOXzvVK2MY5wA" 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="_cwjXX5pAEeOXzvVK2MY5wA" 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="_cwjXYZpAEeOXzvVK2MY5wA" 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="_cwjXY5pAEeOXzvVK2MY5wA" 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="_cwjXZZpAEeOXzvVK2MY5wA" 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="_cwjXZ5pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_YwuZ8E3eEeOm4cpPTMVSiw/235" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjXaJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwjXbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjXaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXa5pAEeOXzvVK2MY5wA" 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="_cwjXbZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwjXbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXcJpAEeOXzvVK2MY5wA" 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="_cwjXcZpAEeOXzvVK2MY5wA" 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="_cwjXc5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwjXdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXdppAEeOXzvVK2MY5wA" 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="_cwjXd5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwjXhZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjXeZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjXe5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjXfZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwjXippAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjXf5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjXgZpAEeOXzvVK2MY5wA" 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="_cwjXg5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwjXhZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwjXhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwjXh5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwjXiJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwjXiZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwjXippAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwjXi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwjXjJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwjXjZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwjXjppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjXj5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwjXkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXkppAEeOXzvVK2MY5wA" 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="_cwjXk5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjXlZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjXl5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwjXj5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjXmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXmppAEeOXzvVK2MY5wA" 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="_cwjXnJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwjXj5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjXnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXn5pAEeOXzvVK2MY5wA" 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="_cwjXoZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwjXoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXpJpAEeOXzvVK2MY5wA" 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="_cwjXpZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjXp5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjXqZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwjXoZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjXqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjXrJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwjXoZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjXrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjXr5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwjXoZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjXsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjXsppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwjXbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjXs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXtJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXtZpAEeOXzvVK2MY5wA" 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="_cwjXt5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwjXuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXuppAEeOXzvVK2MY5wA" 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="_cwjXu5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjXvZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjXv5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwjXwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXwppAEeOXzvVK2MY5wA" 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="_cwjXw5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjXxZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjXx5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwjXv5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjXyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXyppAEeOXzvVK2MY5wA" 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="_cwjXzJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwjXv5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjXzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjXzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjXz5pAEeOXzvVK2MY5wA" 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="_cwjX0ZpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwjX0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjX05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjX1JpAEeOXzvVK2MY5wA" 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="_cwjX1ZpAEeOXzvVK2MY5wA" 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="_cwjX15pAEeOXzvVK2MY5wA" 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="_cwjX2ZpAEeOXzvVK2MY5wA" 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="_cwjX25pAEeOXzvVK2MY5wA" 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="_cwjX3ZpAEeOXzvVK2MY5wA" 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="_cwjX35pAEeOXzvVK2MY5wA" 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="_cwjX4ZpAEeOXzvVK2MY5wA" 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="_cwjX45pAEeOXzvVK2MY5wA" 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="_cwjX5ZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_7tIn0E1BEeOm4cpPTMVSiw/234" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjX5ppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwjX65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjX55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjX6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjX6ZpAEeOXzvVK2MY5wA" 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="_cwjX65pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwjX7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjX7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjX7ppAEeOXzvVK2MY5wA" 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="_cwjX75pAEeOXzvVK2MY5wA" 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="_cwjX8ZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwjX8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjX85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjX9JpAEeOXzvVK2MY5wA" 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="_cwjX9ZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwjYA5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjX95pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjX-ZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjX-5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwjYCJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjX_ZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjX_5pAEeOXzvVK2MY5wA" 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="_cwjYAZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwjYA5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwjYBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwjYBZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwjYBppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwjYB5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwjYCJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwjYCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwjYCppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwjYC5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwjYDJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjYDZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwjYDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjYD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjYEJpAEeOXzvVK2MY5wA" 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="_cwjYEZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjYE5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjYFZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwjYDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjYFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjYF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjYGJpAEeOXzvVK2MY5wA" 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="_cwjYGppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwjYDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjYG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjYHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjYHZpAEeOXzvVK2MY5wA" 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="_cwjYH5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwjYIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjYIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjYIppAEeOXzvVK2MY5wA" 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="_cwjYI5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjYJZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjYJ5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwjYH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjYKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjYKppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwjYH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjYK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjYLZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwjYH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjYLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjYMJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwjX65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjYMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjYMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjYM5pAEeOXzvVK2MY5wA" 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="_cwjYNZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwjYNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjYN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjYOJpAEeOXzvVK2MY5wA" 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="_cwjYOZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwjYO5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjYPZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwjYPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjYP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjYQJpAEeOXzvVK2MY5wA" 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="_cwjYQZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwjYQ5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwjYRZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwjYPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjYRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjYR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjYSJpAEeOXzvVK2MY5wA" 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="_cwjYSppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwjYPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwjYS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjYTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjYTZpAEeOXzvVK2MY5wA" 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="_cwjYT5pAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwjYUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwjYUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwjYUppAEeOXzvVK2MY5wA" 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="_cwjYU5pAEeOXzvVK2MY5wA" 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="_cwjYVZpAEeOXzvVK2MY5wA" 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="_cwjYV5pAEeOXzvVK2MY5wA" 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="_cwjYWZpAEeOXzvVK2MY5wA" 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="_cwjYW5pAEeOXzvVK2MY5wA" 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="_cwjYXZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_APEsUE0eEeOm4cpPTMVSiw/233" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj8QJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwj8RZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj8QZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj8QppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj8Q5pAEeOXzvVK2MY5wA" 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="_cwj8RZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwj8RppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj8R5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj8SJpAEeOXzvVK2MY5wA" 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="_cwj8SZpAEeOXzvVK2MY5wA" 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="_cwj8S5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwj8TJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj8TZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj8TppAEeOXzvVK2MY5wA" 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="_cwj8T5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwj8XZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj8UZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj8U5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj8VZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwj8YppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj8V5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj8WZpAEeOXzvVK2MY5wA" 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="_cwj8W5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwj8XZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwj8XppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwj8X5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwj8YJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwj8YZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwj8YppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwj8Y5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwj8ZJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwj8ZZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwj8ZppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj8Z5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwj8aJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj8aZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj8appAEeOXzvVK2MY5wA" 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="_cwj8a5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj8bZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj8b5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwj8Z5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj8cJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj8cZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj8cppAEeOXzvVK2MY5wA" 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="_cwj8dJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwj8Z5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj8dZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj8dppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj8d5pAEeOXzvVK2MY5wA" 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="_cwj8eZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwj8eppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj8e5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj8fJpAEeOXzvVK2MY5wA" 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="_cwj8fZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj8f5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj8gZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwj8eZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj8gppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj8hJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwj8eZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj8hZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj8h5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwj8eZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj8iJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj8ippAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwj8RZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj8i5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj8jJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj8jZpAEeOXzvVK2MY5wA" 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="_cwj8j5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwj8kJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj8kZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj8kppAEeOXzvVK2MY5wA" 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="_cwj8k5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj8lZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj8l5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwj8mJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj8mZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj8mppAEeOXzvVK2MY5wA" 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="_cwj8m5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj8nZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj8n5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwj8l5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj8oJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj8oZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj8oppAEeOXzvVK2MY5wA" 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="_cwj8pJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwj8l5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj8pZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj8pppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj8p5pAEeOXzvVK2MY5wA" 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="_cwj8qZpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwj8qppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj8q5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj8rJpAEeOXzvVK2MY5wA" 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="_cwj8rZpAEeOXzvVK2MY5wA" 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="_cwj8r5pAEeOXzvVK2MY5wA" 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="_cwj8sZpAEeOXzvVK2MY5wA" 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="_cwj8s5pAEeOXzvVK2MY5wA" 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="_cwj8tZpAEeOXzvVK2MY5wA" 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="_cwj8t5pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_-DnpAEx7EeO1tu-9EBJwrw/232" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj8uJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwj8vZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj8uZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj8uppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj8u5pAEeOXzvVK2MY5wA" 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="_cwj8vZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwj8vppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj8v5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj8wJpAEeOXzvVK2MY5wA" 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="_cwj8wZpAEeOXzvVK2MY5wA" 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="_cwj8w5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwj8xJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj8xZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj8xppAEeOXzvVK2MY5wA" 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="_cwj8x5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwj81ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj8yZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj8y5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj8zZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwj82ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj8z5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj80ZpAEeOXzvVK2MY5wA" 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="_cwj805pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwj81ZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwj81ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwj815pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwj82JpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwj82ZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwj82ppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwj825pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwj83JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwj83ZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwj83ppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj835pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwj84JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj84ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj84ppAEeOXzvVK2MY5wA" 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="_cwj845pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj85ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj855pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwj835pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj86JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj86ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj86ppAEeOXzvVK2MY5wA" 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="_cwj87JpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwj835pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj87ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj87ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj875pAEeOXzvVK2MY5wA" 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="_cwj88ZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwj88ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj885pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj89JpAEeOXzvVK2MY5wA" 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="_cwj89ZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj895pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj8-ZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwj88ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj8-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj8_JpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwj88ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj8_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj8_5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwj88ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj9AJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj9AppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwj8vZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj9A5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9BJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9BZpAEeOXzvVK2MY5wA" 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="_cwj9B5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwj9CJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9CZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9CppAEeOXzvVK2MY5wA" 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="_cwj9C5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj9DZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj9D5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwj9EJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9EZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9EppAEeOXzvVK2MY5wA" 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="_cwj9E5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj9FZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj9F5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwj9D5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj9GJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9GZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9GppAEeOXzvVK2MY5wA" 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="_cwj9HJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwj9D5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj9HZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9HppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9H5pAEeOXzvVK2MY5wA" 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="_cwj9IZpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwj9IppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9I5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9JJpAEeOXzvVK2MY5wA" 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="_cwj9JZpAEeOXzvVK2MY5wA" 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="_cwj9J5pAEeOXzvVK2MY5wA" 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="_cwj9KZpAEeOXzvVK2MY5wA" 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="_cwj9K5pAEeOXzvVK2MY5wA" 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="_cwj9LZpAEeOXzvVK2MY5wA" 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="_cwj9L5pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_KyESkExxEeO1tu-9EBJwrw/231" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj9MJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwj9NZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj9MZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9MppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9M5pAEeOXzvVK2MY5wA" 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="_cwj9NZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwj9NppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9N5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9OJpAEeOXzvVK2MY5wA" 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="_cwj9OZpAEeOXzvVK2MY5wA" 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="_cwj9O5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwj9PJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9PZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9PppAEeOXzvVK2MY5wA" 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="_cwj9P5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwj9TZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj9QZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj9Q5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj9RZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwj9UppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj9R5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj9SZpAEeOXzvVK2MY5wA" 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="_cwj9S5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwj9TZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwj9TppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwj9T5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwj9UJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwj9UZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwj9UppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwj9U5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwj9VJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwj9VZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwj9VppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj9V5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwj9WJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9WZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9WppAEeOXzvVK2MY5wA" 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="_cwj9W5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj9XZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj9X5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwj9V5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj9YJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9YZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9YppAEeOXzvVK2MY5wA" 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="_cwj9ZJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwj9V5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj9ZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9ZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9Z5pAEeOXzvVK2MY5wA" 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="_cwj9aZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwj9appAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9a5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9bJpAEeOXzvVK2MY5wA" 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="_cwj9bZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj9b5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj9cZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwj9aZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj9cppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj9dJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwj9aZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj9dZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj9d5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwj9aZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj9eJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj9eppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwj9NZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj9e5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9fJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9fZpAEeOXzvVK2MY5wA" 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="_cwj9f5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwj9gJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9gZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9gppAEeOXzvVK2MY5wA" 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="_cwj9g5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj9hZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj9h5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwj9iJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9iZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9ippAEeOXzvVK2MY5wA" 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="_cwj9i5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj9jZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj9j5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwj9h5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj9kJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9kZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9kppAEeOXzvVK2MY5wA" 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="_cwj9lJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwj9h5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj9lZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9lppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9l5pAEeOXzvVK2MY5wA" 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="_cwj9mZpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwj9mppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9m5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9nJpAEeOXzvVK2MY5wA" 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="_cwj9nZpAEeOXzvVK2MY5wA" 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="_cwj9n5pAEeOXzvVK2MY5wA" 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="_cwj9oZpAEeOXzvVK2MY5wA" 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="_cwj9o5pAEeOXzvVK2MY5wA" 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="_cwj9pZpAEeOXzvVK2MY5wA" 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="_cwj9p5pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_lbC18ExpEeO1tu-9EBJwrw/230" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj9qJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwj9rZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj9qZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9qppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9q5pAEeOXzvVK2MY5wA" 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="_cwj9rZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwj9rppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9r5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9sJpAEeOXzvVK2MY5wA" 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="_cwj9sZpAEeOXzvVK2MY5wA" 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="_cwj9s5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwj9tJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9tZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9tppAEeOXzvVK2MY5wA" 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="_cwj9t5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwj9xZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj9uZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj9u5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj9vZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwj9yppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj9v5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj9wZpAEeOXzvVK2MY5wA" 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="_cwj9w5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwj9xZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwj9xppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwj9x5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwj9yJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwj9yZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwj9yppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwj9y5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwj9zJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwj9zZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwj9zppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj9z5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwj90JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj90ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj90ppAEeOXzvVK2MY5wA" 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="_cwj905pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj91ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj915pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwj9z5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj92JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj92ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj92ppAEeOXzvVK2MY5wA" 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="_cwj93JpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwj9z5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj93ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj93ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj935pAEeOXzvVK2MY5wA" 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="_cwj94ZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwj94ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj945pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj95JpAEeOXzvVK2MY5wA" 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="_cwj95ZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj955pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj96ZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwj94ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj96ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj97JpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwj94ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj97ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj975pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwj94ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj98JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj98ppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwj9rZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj985pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj99JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj99ZpAEeOXzvVK2MY5wA" 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="_cwj995pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwj9-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj9-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj9-ppAEeOXzvVK2MY5wA" 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="_cwj9-5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj9_ZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj9_5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwj-AJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-AZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-AppAEeOXzvVK2MY5wA" 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="_cwj-A5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj-BZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-B5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwj9_5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-CJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-CZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-CppAEeOXzvVK2MY5wA" 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="_cwj-DJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwj9_5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-DZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-DppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-D5pAEeOXzvVK2MY5wA" 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="_cwj-EZpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwj-EppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-E5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-FJpAEeOXzvVK2MY5wA" 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="_cwj-FZpAEeOXzvVK2MY5wA" 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="_cwj-F5pAEeOXzvVK2MY5wA" 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="_cwj-GZpAEeOXzvVK2MY5wA" 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="_cwj-G5pAEeOXzvVK2MY5wA" 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="_cwj-HZpAEeOXzvVK2MY5wA" 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="_cwj-H5pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_SeguwExOEeO1tu-9EBJwrw/229" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-IJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwj-JZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-IZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-IppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-I5pAEeOXzvVK2MY5wA" 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="_cwj-JZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwj-JppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-J5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-KJpAEeOXzvVK2MY5wA" 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="_cwj-KZpAEeOXzvVK2MY5wA" 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="_cwj-K5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwj-LJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-LZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-LppAEeOXzvVK2MY5wA" 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="_cwj-L5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwj-PZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj-MZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj-M5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj-NZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwj-QppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj-N5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj-OZpAEeOXzvVK2MY5wA" 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="_cwj-O5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwj-PZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwj-PppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwj-P5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwj-QJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwj-QZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwj-QppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwj-Q5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwj-RJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwj-RZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwj-RppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-R5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwj-SJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-SZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-SppAEeOXzvVK2MY5wA" 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="_cwj-S5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj-TZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-T5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwj-R5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-UJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-UZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-UppAEeOXzvVK2MY5wA" 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="_cwj-VJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwj-R5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-VZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-VppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-V5pAEeOXzvVK2MY5wA" 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="_cwj-WZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwj-WppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-W5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-XJpAEeOXzvVK2MY5wA" 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="_cwj-XZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj-X5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-YZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwj-WZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-YppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-ZJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwj-WZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-ZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-Z5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwj-WZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-aJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-appAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwj-JZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-a5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-bJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-bZpAEeOXzvVK2MY5wA" 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="_cwj-b5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwj-cJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-cZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-cppAEeOXzvVK2MY5wA" 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="_cwj-c5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj-dZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-d5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwj-eJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-eZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-eppAEeOXzvVK2MY5wA" 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="_cwj-e5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj-fZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-f5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwj-d5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-gJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-gZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-gppAEeOXzvVK2MY5wA" 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="_cwj-hJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwj-d5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-hZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-hppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-h5pAEeOXzvVK2MY5wA" 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="_cwj-iZpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwj-ippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-i5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-jJpAEeOXzvVK2MY5wA" 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="_cwj-jZpAEeOXzvVK2MY5wA" 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="_cwj-j5pAEeOXzvVK2MY5wA" 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="_cwj-kZpAEeOXzvVK2MY5wA" 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="_cwj-k5pAEeOXzvVK2MY5wA" 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="_cwj-lZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_Bp2N0ExFEeO1tu-9EBJwrw/228" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-lppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwj-m5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-l5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-mJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-mZpAEeOXzvVK2MY5wA" 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="_cwj-m5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwj-nJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-nZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-nppAEeOXzvVK2MY5wA" 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="_cwj-n5pAEeOXzvVK2MY5wA" 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="_cwj-oZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwj-oppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-o5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-pJpAEeOXzvVK2MY5wA" 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="_cwj-pZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwj-s5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj-p5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj-qZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj-q5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwj-uJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj-rZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj-r5pAEeOXzvVK2MY5wA" 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="_cwj-sZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwj-s5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwj-tJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwj-tZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwj-tppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwj-t5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwj-uJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwj-uZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwj-uppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwj-u5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwj-vJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-vZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwj-vppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-v5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-wJpAEeOXzvVK2MY5wA" 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="_cwj-wZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj-w5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-xZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwj-vZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-xppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-x5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-yJpAEeOXzvVK2MY5wA" 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="_cwj-yppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwj-vZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-y5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-zJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-zZpAEeOXzvVK2MY5wA" 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="_cwj-z5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwj-0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-0ppAEeOXzvVK2MY5wA" 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="_cwj-05pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj-1ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-15pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwj-z5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-2ppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwj-z5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-3ZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwj-z5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-4JpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwj-m5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-45pAEeOXzvVK2MY5wA" 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="_cwj-5ZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwj-5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-6JpAEeOXzvVK2MY5wA" 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="_cwj-6ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj-65pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-7ZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwj-7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-8JpAEeOXzvVK2MY5wA" 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="_cwj-8ZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj-85pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj-9ZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwj-7ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj-9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj--JpAEeOXzvVK2MY5wA" 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="_cwj--ppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwj-7ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj--5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj-_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj-_ZpAEeOXzvVK2MY5wA" 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="_cwj-_5pAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwj_AJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj_AZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj_AppAEeOXzvVK2MY5wA" 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="_cwj_A5pAEeOXzvVK2MY5wA" 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="_cwj_BZpAEeOXzvVK2MY5wA" 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="_cwj_B5pAEeOXzvVK2MY5wA" 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="_cwj_CZpAEeOXzvVK2MY5wA" 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="_cwj_C5pAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_vTp5oExEEeO1tu-9EBJwrw/227" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj_DJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwj_EZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj_DZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj_DppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj_D5pAEeOXzvVK2MY5wA" 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="_cwj_EZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwj_EppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj_E5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj_FJpAEeOXzvVK2MY5wA" 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="_cwj_FZpAEeOXzvVK2MY5wA" 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="_cwj_F5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwj_GJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj_GZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj_GppAEeOXzvVK2MY5wA" 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="_cwj_G5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwj_KZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj_HZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj_H5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj_IZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwj_LppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj_I5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj_JZpAEeOXzvVK2MY5wA" 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="_cwj_J5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwj_KZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwj_KppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwj_K5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwj_LJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwj_LZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwj_LppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwj_L5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwj_MJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwj_MZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwj_MppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj_M5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwj_NJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj_NZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj_NppAEeOXzvVK2MY5wA" 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="_cwj_N5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj_OZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj_O5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwj_M5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj_PJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj_PZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj_PppAEeOXzvVK2MY5wA" 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="_cwj_QJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwj_M5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj_QZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj_QppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj_Q5pAEeOXzvVK2MY5wA" 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="_cwj_RZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwj_RppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj_R5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj_SJpAEeOXzvVK2MY5wA" 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="_cwj_SZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj_S5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj_TZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwj_RZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj_TppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj_UJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwj_RZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj_UZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj_U5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwj_RZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj_VJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj_VppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwj_EZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj_V5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj_WJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj_WZpAEeOXzvVK2MY5wA" 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="_cwj_W5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwj_XJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj_XZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj_XppAEeOXzvVK2MY5wA" 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="_cwj_X5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj_YZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj_Y5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwj_ZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj_ZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj_ZppAEeOXzvVK2MY5wA" 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="_cwj_Z5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj_aZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj_a5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwj_Y5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj_bJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj_bZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj_bppAEeOXzvVK2MY5wA" 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="_cwj_cJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwj_Y5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj_cZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj_cppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj_c5pAEeOXzvVK2MY5wA" 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="_cwj_dZpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwj_dppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj_d5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj_eJpAEeOXzvVK2MY5wA" 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="_cwj_eZpAEeOXzvVK2MY5wA" 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="_cwj_e5pAEeOXzvVK2MY5wA" 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="_cwj_fZpAEeOXzvVK2MY5wA" 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="_cwj_f5pAEeOXzvVK2MY5wA" 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="_cwj_gZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_oCjVcExCEeO1tu-9EBJwrw/226" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj_gppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwj_h5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwj_g5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj_hJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj_hZpAEeOXzvVK2MY5wA" 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="_cwj_h5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwj_iJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj_iZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj_ippAEeOXzvVK2MY5wA" 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="_cwj_i5pAEeOXzvVK2MY5wA" 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="_cwj_jZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwj_jppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj_j5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj_kJpAEeOXzvVK2MY5wA" 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="_cwj_kZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwj_n5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj_k5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj_lZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj_l5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwj_pJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwj_mZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj_m5pAEeOXzvVK2MY5wA" 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="_cwj_nZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwj_n5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwj_oJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwj_oZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwj_oppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwj_o5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwj_pJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwj_pZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwj_pppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwj_p5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwj_qJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwj_qZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwj_qppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwj_q5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwj_rJpAEeOXzvVK2MY5wA" 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="_cwj_rZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwj_r5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkjUJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwj_qZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkjUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkjUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkjU5pAEeOXzvVK2MY5wA" 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="_cwkjVZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwj_qZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkjVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkjV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkjWJpAEeOXzvVK2MY5wA" 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="_cwkjWppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwkjW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkjXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkjXZpAEeOXzvVK2MY5wA" 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="_cwkjXppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkjYJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkjYppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwkjWppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkjY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkjZZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwkjWppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkjZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkjaJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwkjWppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkjaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkja5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwj_h5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkjbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkjbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkjbppAEeOXzvVK2MY5wA" 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="_cwkjcJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwkjcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkjcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkjc5pAEeOXzvVK2MY5wA" 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="_cwkjdJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkjdppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkjeJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwkjeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkjeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkje5pAEeOXzvVK2MY5wA" 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="_cwkjfJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkjfppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkjgJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwkjeJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkjgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkjgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkjg5pAEeOXzvVK2MY5wA" 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="_cwkjhZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwkjeJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkjhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkjh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkjiJpAEeOXzvVK2MY5wA" 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="_cwkjippAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwkji5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkjjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkjjZpAEeOXzvVK2MY5wA" 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="_cwkjjppAEeOXzvVK2MY5wA" 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="_cwkjkJpAEeOXzvVK2MY5wA" 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="_cwkjkppAEeOXzvVK2MY5wA" 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="_cwkjlJpAEeOXzvVK2MY5wA" 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="_cwkjlppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_aoI-EErqEeOtQtqAIXVjaw/225" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkjl5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwkjnJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkjmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkjmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkjmppAEeOXzvVK2MY5wA" 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="_cwkjnJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwkjnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkjnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkjn5pAEeOXzvVK2MY5wA" 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="_cwkjoJpAEeOXzvVK2MY5wA" 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="_cwkjoppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwkjo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkjpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkjpZpAEeOXzvVK2MY5wA" 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="_cwkjpppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwkjtJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkjqJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkjqppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkjrJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwkjuZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkjrppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkjsJpAEeOXzvVK2MY5wA" 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="_cwkjsppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwkjtJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwkjtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwkjtppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwkjt5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwkjuJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwkjuZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwkjuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwkju5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwkjvJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwkjvZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkjvppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwkjv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkjwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkjwZpAEeOXzvVK2MY5wA" 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="_cwkjwppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkjxJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkjxppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwkjvppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkjx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkjyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkjyZpAEeOXzvVK2MY5wA" 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="_cwkjy5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwkjvppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkjzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkjzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkjzppAEeOXzvVK2MY5wA" 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="_cwkj0JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwkj0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkj0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkj05pAEeOXzvVK2MY5wA" 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="_cwkj1JpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkj1ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkj2JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwkj0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkj2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkj25pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwkj0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkj3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkj3ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwkj0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkj35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkj4ZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwkjnJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkj4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkj45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkj5JpAEeOXzvVK2MY5wA" 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="_cwkj5ppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwkj55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkj6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkj6ZpAEeOXzvVK2MY5wA" 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="_cwkj6ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkj7JpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkj7ppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwkj75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkj8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkj8ZpAEeOXzvVK2MY5wA" 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="_cwkj8ppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkj9JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkj9ppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwkj7ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkj95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkj-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkj-ZpAEeOXzvVK2MY5wA" 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="_cwkj-5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwkj7ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkj_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkj_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkj_ppAEeOXzvVK2MY5wA" 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="_cwkkAJpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwkkAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkA5pAEeOXzvVK2MY5wA" 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="_cwkkBJpAEeOXzvVK2MY5wA" 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="_cwkkBppAEeOXzvVK2MY5wA" 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="_cwkkCJpAEeOXzvVK2MY5wA" 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="_cwkkCppAEeOXzvVK2MY5wA" 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="_cwkkDJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_G_eEQEq8EeOKpLNQ4yMd7Q/224" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkkDZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwkkEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkkDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkEJpAEeOXzvVK2MY5wA" 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="_cwkkEppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwkkE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkFZpAEeOXzvVK2MY5wA" 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="_cwkkFppAEeOXzvVK2MY5wA" 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="_cwkkGJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwkkGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkG5pAEeOXzvVK2MY5wA" 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="_cwkkHJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwkkKppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkkHppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkkIJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkkIppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwkkL5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkkJJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkkJppAEeOXzvVK2MY5wA" 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="_cwkkKJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwkkKppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwkkK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwkkLJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwkkLZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwkkLppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwkkL5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwkkMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwkkMZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwkkMppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwkkM5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkkNJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwkkNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkN5pAEeOXzvVK2MY5wA" 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="_cwkkOJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkkOppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkkPJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwkkNJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkkPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkP5pAEeOXzvVK2MY5wA" 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="_cwkkQZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwkkNJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkkQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkRJpAEeOXzvVK2MY5wA" 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="_cwkkRppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwkkR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkSZpAEeOXzvVK2MY5wA" 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="_cwkkSppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkkTJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkkTppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwkkRppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkkT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkkUZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwkkRppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkkUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkkVJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwkkRppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkkVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkkV5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwkkEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkkWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkWppAEeOXzvVK2MY5wA" 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="_cwkkXJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwkkXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkX5pAEeOXzvVK2MY5wA" 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="_cwkkYJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkkYppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkkZJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwkkZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkZ5pAEeOXzvVK2MY5wA" 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="_cwkkaJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkkappAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkkbJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwkkZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkkbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkb5pAEeOXzvVK2MY5wA" 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="_cwkkcZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwkkZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkkcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkdJpAEeOXzvVK2MY5wA" 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="_cwkkdppAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwkkd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkeZpAEeOXzvVK2MY5wA" 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="_cwkkeppAEeOXzvVK2MY5wA" 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="_cwkkfJpAEeOXzvVK2MY5wA" 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="_cwkkfppAEeOXzvVK2MY5wA" 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="_cwkkgJpAEeOXzvVK2MY5wA" 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="_cwkkgppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_z-xsACt2EeOCxugl5pYtow/223" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkkg5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwkkiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkkhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkhppAEeOXzvVK2MY5wA" 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="_cwkkiJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwkkiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkki5pAEeOXzvVK2MY5wA" 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="_cwkkjJpAEeOXzvVK2MY5wA" 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="_cwkkjppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwkkj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkkZpAEeOXzvVK2MY5wA" 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="_cwkkkppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwkkoJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkklJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkklppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkkmJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwkkpZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkkmppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkknJpAEeOXzvVK2MY5wA" 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="_cwkknppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwkkoJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwkkoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwkkoppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwkko5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwkkpJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwkkpZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwkkpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwkkp5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwkkqJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwkkqZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkkqppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwkkq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkrZpAEeOXzvVK2MY5wA" 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="_cwkkrppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkksJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkksppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwkkqppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkks5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkktJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkktZpAEeOXzvVK2MY5wA" 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="_cwkkt5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwkkqppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkkuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkuppAEeOXzvVK2MY5wA" 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="_cwkkvJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwkkvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkkv5pAEeOXzvVK2MY5wA" 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="_cwkkwJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkkwppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkkxJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwkkvJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkkxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkkx5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwkkvJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkkyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkkyppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwkkvJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkky5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkkzZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwkkiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkkzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkkz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkk0JpAEeOXzvVK2MY5wA" 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="_cwkk0ppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwkk05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkk1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkk1ZpAEeOXzvVK2MY5wA" 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="_cwkk1ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkk2JpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkk2ppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwkk25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkk3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkk3ZpAEeOXzvVK2MY5wA" 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="_cwkk3ppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkk4JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkk4ppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwkk2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkk45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkk5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkk5ZpAEeOXzvVK2MY5wA" 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="_cwkk55pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwkk2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkk6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkk6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkk6ppAEeOXzvVK2MY5wA" 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="_cwkk7JpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwkk7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkk7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkk75pAEeOXzvVK2MY5wA" 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="_cwkk8JpAEeOXzvVK2MY5wA" 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="_cwkk8ppAEeOXzvVK2MY5wA" 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="_cwkk9JpAEeOXzvVK2MY5wA" 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="_cwkk9ppAEeOXzvVK2MY5wA" 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="_cwkk-JpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_r8QAACt2EeOCxugl5pYtow/222" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkk-ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwkk_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkk-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkk-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkk_JpAEeOXzvVK2MY5wA" 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="_cwkk_ppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwkk_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklAZpAEeOXzvVK2MY5wA" 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="_cwklAppAEeOXzvVK2MY5wA" 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="_cwklBJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwklBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklB5pAEeOXzvVK2MY5wA" 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="_cwklCJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwklFppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwklCppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwklDJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwklDppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwklG5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwklEJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwklEppAEeOXzvVK2MY5wA" 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="_cwklFJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwklFppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwklF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwklGJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwklGZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwklGppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwklG5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwklHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwklHZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwklHppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwklH5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwklIJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwklIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklI5pAEeOXzvVK2MY5wA" 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="_cwklJJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwklJppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwklKJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwklIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwklKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklK5pAEeOXzvVK2MY5wA" 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="_cwklLZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwklIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwklLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklMJpAEeOXzvVK2MY5wA" 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="_cwklMppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwklM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklNZpAEeOXzvVK2MY5wA" 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="_cwklNppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwklOJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwklOppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwklMppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwklO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwklPZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwklMppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwklPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwklQJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwklMppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwklQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwklQ5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwkk_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwklRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklRppAEeOXzvVK2MY5wA" 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="_cwklSJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwklSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklS5pAEeOXzvVK2MY5wA" 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="_cwklTJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwklTppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwklUJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwklUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklU5pAEeOXzvVK2MY5wA" 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="_cwklVJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwklVppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwklWJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwklUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwklWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklW5pAEeOXzvVK2MY5wA" 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="_cwklXZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwklUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwklXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklYJpAEeOXzvVK2MY5wA" 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="_cwklYppAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwklY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklZZpAEeOXzvVK2MY5wA" 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="_cwklZppAEeOXzvVK2MY5wA" 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="_cwklaJpAEeOXzvVK2MY5wA" 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="_cwklappAEeOXzvVK2MY5wA" 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="_cwklbJpAEeOXzvVK2MY5wA" 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="_cwklbppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_3lAdwCt0EeOCxugl5pYtow/221" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwklb5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwkldJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwklcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklcppAEeOXzvVK2MY5wA" 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="_cwkldJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwkldZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkldppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkld5pAEeOXzvVK2MY5wA" 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="_cwkleJpAEeOXzvVK2MY5wA" 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="_cwkleppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwkle5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklfZpAEeOXzvVK2MY5wA" 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="_cwklfppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwkljJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwklgJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwklgppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwklhJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwklkZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwklhppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkliJpAEeOXzvVK2MY5wA" 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="_cwklippAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwkljJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwkljZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwkljppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwklj5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwklkJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwklkZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwklkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwklk5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwkllJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwkllZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkllppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwkll5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklmZpAEeOXzvVK2MY5wA" 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="_cwklmppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwklnJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwklnppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwkllppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkln5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkloJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkloZpAEeOXzvVK2MY5wA" 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="_cwklo5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwkllppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwklpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklpppAEeOXzvVK2MY5wA" 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="_cwklqJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwklqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklq5pAEeOXzvVK2MY5wA" 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="_cwklrJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwklrppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwklsJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwklqJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwklsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkls5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwklqJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkltJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkltppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwklqJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwklt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkluZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwkldJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkluppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklvJpAEeOXzvVK2MY5wA" 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="_cwklvppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwklv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklwZpAEeOXzvVK2MY5wA" 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="_cwklwppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwklxJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwklxppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwklx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwklyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwklyZpAEeOXzvVK2MY5wA" 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="_cwklyppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwklzJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwklzppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwklxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwklz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkl0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkl0ZpAEeOXzvVK2MY5wA" 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="_cwkl05pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwklxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkl1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkl1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkl1ppAEeOXzvVK2MY5wA" 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="_cwkl2JpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwkl2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkl2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkl25pAEeOXzvVK2MY5wA" 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="_cwkl3JpAEeOXzvVK2MY5wA" 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="_cwkl3ppAEeOXzvVK2MY5wA" 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="_cwkl4JpAEeOXzvVK2MY5wA" 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="_cwkl4ppAEeOXzvVK2MY5wA" 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="_cwkl5JpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_iTKtQCtzEeOCxugl5pYtow/220" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkl5ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwkl6ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkl5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkl55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkl6JpAEeOXzvVK2MY5wA" 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="_cwkl6ppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwkl65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkl7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkl7ZpAEeOXzvVK2MY5wA" 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="_cwkl7ppAEeOXzvVK2MY5wA" 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="_cwkl8JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwkl8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkl8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkl85pAEeOXzvVK2MY5wA" 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="_cwkl9JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwkmAppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkl9ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkl-JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkl-ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwkmB5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkl_JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkl_ppAEeOXzvVK2MY5wA" 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="_cwkmAJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwkmAppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwkmA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwkmBJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwkmBZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwkmBppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwkmB5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwkmCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwkmCZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwkmCppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwkmC5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkmDJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwkmDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkmDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkmD5pAEeOXzvVK2MY5wA" 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="_cwkmEJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkmEppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkmFJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwkmDJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkmFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkmFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkmF5pAEeOXzvVK2MY5wA" 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="_cwkmGZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwkmDJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkmGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkmG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkmHJpAEeOXzvVK2MY5wA" 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="_cwkmHppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwkmH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkmIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkmIZpAEeOXzvVK2MY5wA" 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="_cwkmIppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkmJJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkmJppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwkmHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkmJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkmKZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwkmHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkmKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkmLJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwkmHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkmLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkmL5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwkl6ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkmMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkmMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkmMppAEeOXzvVK2MY5wA" 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="_cwkmNJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwkmNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkmNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkmN5pAEeOXzvVK2MY5wA" 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="_cwkmOJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkmOppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkmPJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwkmPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkmPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkmP5pAEeOXzvVK2MY5wA" 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="_cwkmQJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkmQppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkmRJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwkmPJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkmRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkmRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkmR5pAEeOXzvVK2MY5wA" 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="_cwkmSZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwkmPJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkmSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkmS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkmTJpAEeOXzvVK2MY5wA" 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="_cwkmTppAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwkmT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkmUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkmUZpAEeOXzvVK2MY5wA" 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="_cwkmUppAEeOXzvVK2MY5wA" 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="_cwkmVJpAEeOXzvVK2MY5wA" 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="_cwkmVppAEeOXzvVK2MY5wA" 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="_cwkmWJpAEeOXzvVK2MY5wA" 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="_cwkmWppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_rosHoCtyEeOCxugl5pYtow/219" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkmW5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwkmYJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkmXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkmXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkmXppAEeOXzvVK2MY5wA" 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="_cwkmYJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwkmYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkmYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkmY5pAEeOXzvVK2MY5wA" 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="_cwkmZJpAEeOXzvVK2MY5wA" 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="_cwkmZppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwkmZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkmaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkmaZpAEeOXzvVK2MY5wA" 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="_cwkmappAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwkmeJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkmbJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkmbppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkmcJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwkmfZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwkmcppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkmdJpAEeOXzvVK2MY5wA" 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="_cwkmdppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwkmeJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwkmeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwkmeppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwkme5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwkmfJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwkmfZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwkmfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwkmf5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwkmgJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwkmgZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkmgppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwkmg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkmhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkmhZpAEeOXzvVK2MY5wA" 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="_cwkmhppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkmiJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkmippAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwkmgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkmi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkmjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkmjZpAEeOXzvVK2MY5wA" 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="_cwkmj5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwkmgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkmkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkmkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkmkppAEeOXzvVK2MY5wA" 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="_cwkmlJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwkmlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwkmlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwkml5pAEeOXzvVK2MY5wA" 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="_cwkmmJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwkmmppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkmnJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwkmlJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkmnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwkmn5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwkmlJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwkmoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlKYJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwkmlJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlKYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlKY5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwkmYJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlKZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlKZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlKZppAEeOXzvVK2MY5wA" 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="_cwlKaJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwlKaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlKappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlKa5pAEeOXzvVK2MY5wA" 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="_cwlKbJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlKbppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlKcJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwlKcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlKcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlKc5pAEeOXzvVK2MY5wA" 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="_cwlKdJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlKdppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlKeJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwlKcJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlKeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlKeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlKe5pAEeOXzvVK2MY5wA" 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="_cwlKfZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwlKcJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlKfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlKf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlKgJpAEeOXzvVK2MY5wA" 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="_cwlKgppAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwlKg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlKhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlKhZpAEeOXzvVK2MY5wA" 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="_cwlKhppAEeOXzvVK2MY5wA" 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="_cwlKiJpAEeOXzvVK2MY5wA" 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="_cwlKippAEeOXzvVK2MY5wA" 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="_cwlKjJpAEeOXzvVK2MY5wA" 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="_cwlKjppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_lVgSUCtyEeOCxugl5pYtow/218" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlKj5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwlKlJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlKkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlKkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlKkppAEeOXzvVK2MY5wA" 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="_cwlKlJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwlKlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlKlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlKl5pAEeOXzvVK2MY5wA" 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="_cwlKmJpAEeOXzvVK2MY5wA" 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="_cwlKmppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwlKm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlKnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlKnZpAEeOXzvVK2MY5wA" 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="_cwlKnppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwlKrJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlKoJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlKoppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlKpJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwlKsZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlKpppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlKqJpAEeOXzvVK2MY5wA" 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="_cwlKqppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlKrJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwlKrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlKrppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlKr5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwlKsJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlKsZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwlKsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlKs5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlKtJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwlKtZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlKtppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwlKt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlKuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlKuZpAEeOXzvVK2MY5wA" 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="_cwlKuppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlKvJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlKvppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwlKtppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlKv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlKwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlKwZpAEeOXzvVK2MY5wA" 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="_cwlKw5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwlKtppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlKxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlKxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlKxppAEeOXzvVK2MY5wA" 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="_cwlKyJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwlKyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlKyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlKy5pAEeOXzvVK2MY5wA" 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="_cwlKzJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlKzppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlK0JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwlKyJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlK0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlK05pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwlKyJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlK1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlK1ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwlKyJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlK15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlK2ZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwlKlJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlK2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlK25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlK3JpAEeOXzvVK2MY5wA" 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="_cwlK3ppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwlK35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlK4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlK4ZpAEeOXzvVK2MY5wA" 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="_cwlK4ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlK5JpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlK5ppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwlK55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlK6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlK6ZpAEeOXzvVK2MY5wA" 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="_cwlK6ppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlK7JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlK7ppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwlK5ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlK75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlK8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlK8ZpAEeOXzvVK2MY5wA" 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="_cwlK85pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwlK5ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlK9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlK9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlK9ppAEeOXzvVK2MY5wA" 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="_cwlK-JpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwlK-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlK-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlK-5pAEeOXzvVK2MY5wA" 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="_cwlK_JpAEeOXzvVK2MY5wA" 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="_cwlK_ppAEeOXzvVK2MY5wA" 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="_cwlLAJpAEeOXzvVK2MY5wA" 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="_cwlLAppAEeOXzvVK2MY5wA" 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="_cwlLBJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_6ya8UCtxEeOCxugl5pYtow/217" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlLBZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwlLCppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlLBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLCJpAEeOXzvVK2MY5wA" 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="_cwlLCppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwlLC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLDZpAEeOXzvVK2MY5wA" 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="_cwlLDppAEeOXzvVK2MY5wA" 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="_cwlLEJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwlLEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLE5pAEeOXzvVK2MY5wA" 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="_cwlLFJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwlLIppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlLFppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlLGJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlLGppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwlLJ5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlLHJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlLHppAEeOXzvVK2MY5wA" 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="_cwlLIJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlLIppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwlLI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlLJJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlLJZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwlLJppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlLJ5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwlLKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlLKZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlLKppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwlLK5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlLLJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwlLLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLL5pAEeOXzvVK2MY5wA" 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="_cwlLMJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlLMppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlLNJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwlLLJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlLNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLN5pAEeOXzvVK2MY5wA" 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="_cwlLOZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwlLLJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlLOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLPJpAEeOXzvVK2MY5wA" 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="_cwlLPppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwlLP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLQZpAEeOXzvVK2MY5wA" 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="_cwlLQppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlLRJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlLRppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwlLPppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlLR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlLSZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwlLPppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlLSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlLTJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwlLPppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlLTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlLT5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwlLCppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlLUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLUppAEeOXzvVK2MY5wA" 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="_cwlLVJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwlLVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLV5pAEeOXzvVK2MY5wA" 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="_cwlLWJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlLWppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlLXJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwlLXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLX5pAEeOXzvVK2MY5wA" 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="_cwlLYJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlLYppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlLZJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwlLXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlLZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLZ5pAEeOXzvVK2MY5wA" 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="_cwlLaZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwlLXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlLappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLbJpAEeOXzvVK2MY5wA" 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="_cwlLbppAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwlLb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLcZpAEeOXzvVK2MY5wA" 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="_cwlLcppAEeOXzvVK2MY5wA" 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="_cwlLdJpAEeOXzvVK2MY5wA" 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="_cwlLdppAEeOXzvVK2MY5wA" 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="_cwlLeJpAEeOXzvVK2MY5wA" 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="_cwlLeppAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_vr3McBr7EeORkuHPTu-OVg/216" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlLe5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwlLgJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlLfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLfppAEeOXzvVK2MY5wA" 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="_cwlLgJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwlLgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLg5pAEeOXzvVK2MY5wA" 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="_cwlLhJpAEeOXzvVK2MY5wA" 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="_cwlLhppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwlLh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLiZpAEeOXzvVK2MY5wA" 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="_cwlLippAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwlLmJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlLjJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlLjppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlLkJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwlLnZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlLkppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlLlJpAEeOXzvVK2MY5wA" 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="_cwlLlppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlLmJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwlLmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlLmppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlLm5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwlLnJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlLnZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwlLnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlLn5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlLoJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwlLoZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlLoppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwlLo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLpZpAEeOXzvVK2MY5wA" 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="_cwlLpppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlLqJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlLqppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwlLoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlLq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLrZpAEeOXzvVK2MY5wA" 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="_cwlLr5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwlLoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlLsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLsppAEeOXzvVK2MY5wA" 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="_cwlLtJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwlLtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLt5pAEeOXzvVK2MY5wA" 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="_cwlLuJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlLuppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlLvJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwlLtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlLvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlLv5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwlLtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlLwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlLwppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwlLtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlLw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlLxZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwlLgJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlLxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLyJpAEeOXzvVK2MY5wA" 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="_cwlLyppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwlLy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlLzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlLzZpAEeOXzvVK2MY5wA" 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="_cwlLzppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlL0JpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlL0ppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwlL05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlL1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlL1ZpAEeOXzvVK2MY5wA" 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="_cwlL1ppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlL2JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlL2ppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwlL0ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlL25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlL3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlL3ZpAEeOXzvVK2MY5wA" 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="_cwlL35pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwlL0ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlL4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlL4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlL4ppAEeOXzvVK2MY5wA" 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="_cwlL5JpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwlL5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlL5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlL55pAEeOXzvVK2MY5wA" 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="_cwlL6JpAEeOXzvVK2MY5wA" 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="_cwlL6ppAEeOXzvVK2MY5wA" 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="_cwlL7JpAEeOXzvVK2MY5wA" 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="_cwlL7ppAEeOXzvVK2MY5wA" 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="_cwlL8JpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_FL5SUBrvEeOOFvgOs7ZuAw/215" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlL8ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwlL9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlL8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlL85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlL9JpAEeOXzvVK2MY5wA" 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="_cwlL9ppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwlL95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlL-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlL-ZpAEeOXzvVK2MY5wA" 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="_cwlL-ppAEeOXzvVK2MY5wA" 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="_cwlL_JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwlL_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlL_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlL_5pAEeOXzvVK2MY5wA" 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="_cwlMAJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwlMDppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlMAppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlMBJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlMBppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwlME5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlMCJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlMCppAEeOXzvVK2MY5wA" 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="_cwlMDJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlMDppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwlMD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlMEJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlMEZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwlMEppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlME5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwlMFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlMFZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlMFppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwlMF5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlMGJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwlMGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMG5pAEeOXzvVK2MY5wA" 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="_cwlMHJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlMHppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlMIJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwlMGJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlMIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMI5pAEeOXzvVK2MY5wA" 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="_cwlMJZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwlMGJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlMJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMKJpAEeOXzvVK2MY5wA" 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="_cwlMKppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwlMK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMLZpAEeOXzvVK2MY5wA" 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="_cwlMLppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlMMJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlMMppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwlMKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlMM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlMNZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwlMKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlMNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlMOJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwlMKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlMOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlMO5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwlL9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlMPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMPppAEeOXzvVK2MY5wA" 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="_cwlMQJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwlMQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMQ5pAEeOXzvVK2MY5wA" 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="_cwlMRJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlMRppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlMSJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwlMSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMS5pAEeOXzvVK2MY5wA" 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="_cwlMTJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlMTppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlMUJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwlMSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlMUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMU5pAEeOXzvVK2MY5wA" 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="_cwlMVZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwlMSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlMVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMWJpAEeOXzvVK2MY5wA" 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="_cwlMWppAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwlMW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMXZpAEeOXzvVK2MY5wA" 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="_cwlMXppAEeOXzvVK2MY5wA" 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="_cwlMYJpAEeOXzvVK2MY5wA" 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="_cwlMYppAEeOXzvVK2MY5wA" 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="_cwlMZJpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_1U1ekBrkEeOOFvgOs7ZuAw/214" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlMZZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwlMappAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlMZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMaJpAEeOXzvVK2MY5wA" 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="_cwlMappAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwlMa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMbZpAEeOXzvVK2MY5wA" 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="_cwlMbppAEeOXzvVK2MY5wA" 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="_cwlMcJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwlMcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMc5pAEeOXzvVK2MY5wA" 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="_cwlMdJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwlMgppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlMdppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlMeJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlMeppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwlMh5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlMfJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlMfppAEeOXzvVK2MY5wA" 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="_cwlMgJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlMgppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwlMg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlMhJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlMhZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwlMhppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlMh5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwlMiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlMiZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlMippAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwlMi5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlMjJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwlMjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMj5pAEeOXzvVK2MY5wA" 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="_cwlMkJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlMkppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlMlJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwlMjJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlMlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMl5pAEeOXzvVK2MY5wA" 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="_cwlMmZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwlMjJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlMmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMnJpAEeOXzvVK2MY5wA" 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="_cwlMnppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwlMn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMoZpAEeOXzvVK2MY5wA" 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="_cwlMoppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlMpJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlMpppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwlMnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlMp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlMqZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwlMnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlMqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlMrJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwlMnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlMrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlMr5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwlMappAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlMsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMsppAEeOXzvVK2MY5wA" 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="_cwlMtJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwlMtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMt5pAEeOXzvVK2MY5wA" 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="_cwlMuJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlMuppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlMvJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwlMvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMv5pAEeOXzvVK2MY5wA" 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="_cwlMwJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlMwppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlMxJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwlMvJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlMxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMx5pAEeOXzvVK2MY5wA" 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="_cwlMyZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwlMvJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlMyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlMy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlMzJpAEeOXzvVK2MY5wA" 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="_cwlMzppAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwlMz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlM0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlM0ZpAEeOXzvVK2MY5wA" 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="_cwlM0ppAEeOXzvVK2MY5wA" 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="_cwlM1JpAEeOXzvVK2MY5wA" 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="_cwlM1ppAEeOXzvVK2MY5wA" 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="_cwlM2JpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_-SUMYBrjEeOOFvgOs7ZuAw/213" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlM2ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwlM3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlM2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlM25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlM3JpAEeOXzvVK2MY5wA" 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="_cwlM3ppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwlM35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlM4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlM4ZpAEeOXzvVK2MY5wA" 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="_cwlM4ppAEeOXzvVK2MY5wA" 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="_cwlM5JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwlM5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlM5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlM55pAEeOXzvVK2MY5wA" 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="_cwlM6JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwlM9ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlM6ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlM7JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlM7ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwlM-5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlM8JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlM8ppAEeOXzvVK2MY5wA" 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="_cwlM9JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlM9ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwlM95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlM-JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlM-ZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwlM-ppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlM-5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwlM_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlM_ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlM_ppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwlM_5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlNAJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwlNAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlNAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlNA5pAEeOXzvVK2MY5wA" 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="_cwlNBJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlNBppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlNCJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwlNAJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlNCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlNCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlNC5pAEeOXzvVK2MY5wA" 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="_cwlNDZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwlNAJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlNDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlND5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlNEJpAEeOXzvVK2MY5wA" 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="_cwlNEppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwlNE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlNFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlNFZpAEeOXzvVK2MY5wA" 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="_cwlNFppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlNGJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlNGppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwlNEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlNG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlNHZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwlNEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlNHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlNIJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwlNEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlNIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlNI5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwlNJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwlNJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlNJppAEeOXzvVK2MY5wA" 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="_cwlNJ5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlNKZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlNK5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwlNI5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlNLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlNLppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwlNI5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlNL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlNMZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwlNI5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlNMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlNNJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwlNI5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlNNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlNN5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwlNI5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlNOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlNOppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwlNI5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlNO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlNPZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwlM3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlNPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlNP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlNQJpAEeOXzvVK2MY5wA" 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="_cwlNQppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwlNQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlNRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlNRZpAEeOXzvVK2MY5wA" 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="_cwlNRppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlNSJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlNSppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwlNS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlNTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlNTZpAEeOXzvVK2MY5wA" 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="_cwlNTppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlNUJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlNUppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwlNSppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlNU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlNVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlNVZpAEeOXzvVK2MY5wA" 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="_cwlNV5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwlNSppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlNWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlNWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlNWppAEeOXzvVK2MY5wA" 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="_cwlNXJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwlNI5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlNXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlNX5pAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwlNYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlNYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlNYppAEeOXzvVK2MY5wA" 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="_cwlNY5pAEeOXzvVK2MY5wA" 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="_cwlNZZpAEeOXzvVK2MY5wA" 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="_cwlNZ5pAEeOXzvVK2MY5wA" 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="_cwlNaZpAEeOXzvVK2MY5wA" name="CTIE_Profile_Final" nsURI="http:///schemas/CTIE_Profile_Final/_zoYZQBrjEeOOFvgOs7ZuAw/212" nsPrefix="CTIE_Profile_Final">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlNappAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwlNb5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlNa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlNbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlNbZpAEeOXzvVK2MY5wA" 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="_cwlNb5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwlNcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlNcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlNcppAEeOXzvVK2MY5wA" 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="_cwlNc5pAEeOXzvVK2MY5wA" 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="_cwlNdZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwlNdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlNd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlNeJpAEeOXzvVK2MY5wA" 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="_cwlNeZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwlNh5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlNe5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlNfZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlNf5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwlxcZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlNgZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlNg5pAEeOXzvVK2MY5wA" 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="_cwlNhZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlNh5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwlNiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlNiZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlNippAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwlxcJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlxcZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwlxcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlxc5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlxdJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwlxdZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlxdppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwlxd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlxeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlxeZpAEeOXzvVK2MY5wA" 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="_cwlxeppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlxfJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlxfppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwlxdppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlxf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlxgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlxgZpAEeOXzvVK2MY5wA" 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="_cwlxg5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwlxdppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlxhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlxhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlxhppAEeOXzvVK2MY5wA" 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="_cwlxiJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwlxiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlxippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlxi5pAEeOXzvVK2MY5wA" 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="_cwlxjJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlxjppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlxkJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwlxiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlxkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlxk5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwlxiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlxlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlxlppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwlxiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlxl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlxmZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwlxmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwlxm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlxnJpAEeOXzvVK2MY5wA" 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="_cwlxnZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlxn5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlxoZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwlxmZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlxoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlxpJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwlxmZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlxpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlxp5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwlxmZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlxqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlxqppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwlxmZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlxq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlxrZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwlxmZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlxrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlxsJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwlxmZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlxsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlxs5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwlNb5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlxtJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlxtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlxtppAEeOXzvVK2MY5wA" 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="_cwlxuJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwlxuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlxuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlxu5pAEeOXzvVK2MY5wA" 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="_cwlxvJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlxvppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlxwJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwlxwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlxwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlxw5pAEeOXzvVK2MY5wA" 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="_cwlxxJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlxxppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlxyJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwlxwJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlxyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlxyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlxy5pAEeOXzvVK2MY5wA" 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="_cwlxzZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwlxwJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlxzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlxz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlx0JpAEeOXzvVK2MY5wA" 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="_cwlx0ppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwlxmZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlx05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlx1ZpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwlx1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlx15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlx2JpAEeOXzvVK2MY5wA" 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="_cwlx2ZpAEeOXzvVK2MY5wA" 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="_cwlx25pAEeOXzvVK2MY5wA" 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="_cwlx3ZpAEeOXzvVK2MY5wA" 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="_cwlx35pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_M3GGcBrOEeO3FtpFWfDEnw/211" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlx4JpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwlx5ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlx4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlx4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlx45pAEeOXzvVK2MY5wA" 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="_cwlx5ZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwlx5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlx55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlx6JpAEeOXzvVK2MY5wA" 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="_cwlx6ZpAEeOXzvVK2MY5wA" 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="_cwlx65pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwlx7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlx7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlx7ppAEeOXzvVK2MY5wA" 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="_cwlx75pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwlx_ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlx8ZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlx85pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlx9ZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwlyAppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlx95pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlx-ZpAEeOXzvVK2MY5wA" 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="_cwlx-5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlx_ZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwlx_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlx_5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlyAJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwlyAZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlyAppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwlyA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlyBJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlyBZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwlyBppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyB5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwlyCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlyCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlyCppAEeOXzvVK2MY5wA" 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="_cwlyC5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlyDZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyD5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwlyB5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlyEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlyEppAEeOXzvVK2MY5wA" 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="_cwlyFJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwlyB5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlyFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlyF5pAEeOXzvVK2MY5wA" 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="_cwlyGZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwlyGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlyG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlyHJpAEeOXzvVK2MY5wA" 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="_cwlyHZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlyH5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyIZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwlyGZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyJJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwlyGZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyJ5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwlyGZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyKppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwlyK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwlyLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlyLZpAEeOXzvVK2MY5wA" 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="_cwlyLppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlyMJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyMppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwlyKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyNZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwlyKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyOJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwlyKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyO5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwlyKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyPppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwlyKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyQZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwlyKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyRJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwlx5ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlyRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlyR5pAEeOXzvVK2MY5wA" 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="_cwlySZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwlySppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlyS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlyTJpAEeOXzvVK2MY5wA" 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="_cwlyTZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlyT5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyUZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwlyUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlyU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlyVJpAEeOXzvVK2MY5wA" 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="_cwlyVZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlyV5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyWZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwlyUZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlyW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlyXJpAEeOXzvVK2MY5wA" 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="_cwlyXppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwlyUZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlyYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlyYZpAEeOXzvVK2MY5wA" 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="_cwlyY5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwlyKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyZppAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwlyZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlyaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlyaZpAEeOXzvVK2MY5wA" 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="_cwlyappAEeOXzvVK2MY5wA" 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="_cwlybJpAEeOXzvVK2MY5wA" 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="_cwlybppAEeOXzvVK2MY5wA" 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="_cwlycJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_6WAJ0BrNEeO3FtpFWfDEnw/210" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlycZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwlydppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlycppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlyc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlydJpAEeOXzvVK2MY5wA" 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="_cwlydppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwlyd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlyeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlyeZpAEeOXzvVK2MY5wA" 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="_cwlyeppAEeOXzvVK2MY5wA" 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="_cwlyfJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwlyfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlyfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlyf5pAEeOXzvVK2MY5wA" 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="_cwlygJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwlyjppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlygppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlyhJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlyhppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwlyk5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlyiJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlyippAEeOXzvVK2MY5wA" 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="_cwlyjJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlyjppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwlyj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlykJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlykZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwlykppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlyk5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwlylJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlylZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlylppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwlyl5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlymJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwlymZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlymppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlym5pAEeOXzvVK2MY5wA" 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="_cwlynJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlynppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyoJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwlymJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlyoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlyo5pAEeOXzvVK2MY5wA" 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="_cwlypZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwlymJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlypppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlyp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlyqJpAEeOXzvVK2MY5wA" 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="_cwlyqppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwlyq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlyrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlyrZpAEeOXzvVK2MY5wA" 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="_cwlyrppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlysJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlysppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwlyqppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlys5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlytZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwlyqppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlytppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyuJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwlyqppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyu5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwlyvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwlyvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlyvppAEeOXzvVK2MY5wA" 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="_cwlyv5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlywZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyw5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwlyu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyxppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwlyu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyyZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwlyu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyzJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwlyu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlyzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlyz5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwlyu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwly0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwly0ppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwlyu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwly05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwly1ZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwlydppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwly1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwly15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwly2JpAEeOXzvVK2MY5wA" 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="_cwly2ppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwly25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwly3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwly3ZpAEeOXzvVK2MY5wA" 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="_cwly3ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwly4JpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwly4ppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwly45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwly5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwly5ZpAEeOXzvVK2MY5wA" 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="_cwly5ppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwly6JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwly6ppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwly4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwly65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwly7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwly7ZpAEeOXzvVK2MY5wA" 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="_cwly75pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwly4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwly8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwly8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwly8ppAEeOXzvVK2MY5wA" 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="_cwly9JpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwlyu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwly9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwly95pAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwly-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwly-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwly-ppAEeOXzvVK2MY5wA" 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="_cwly-5pAEeOXzvVK2MY5wA" 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="_cwly_ZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_EMKo4BlpEeOVy4eWE0NqJw/209" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwly_ppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwlzA5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwly_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzAZpAEeOXzvVK2MY5wA" 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="_cwlzA5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwlzBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzBppAEeOXzvVK2MY5wA" 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="_cwlzB5pAEeOXzvVK2MY5wA" 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="_cwlzCZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwlzCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzDJpAEeOXzvVK2MY5wA" 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="_cwlzDZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwlzG5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlzD5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlzEZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlzE5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwlzIJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlzFZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlzF5pAEeOXzvVK2MY5wA" 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="_cwlzGZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlzG5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwlzHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlzHZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlzHppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwlzH5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlzIJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwlzIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlzIppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlzI5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwlzJJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzJZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwlzJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzKJpAEeOXzvVK2MY5wA" 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="_cwlzKZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlzK5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzLZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwlzJZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzMJpAEeOXzvVK2MY5wA" 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="_cwlzMppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwlzJZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzNZpAEeOXzvVK2MY5wA" 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="_cwlzN5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwlzOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzOppAEeOXzvVK2MY5wA" 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="_cwlzO5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlzPZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzP5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwlzN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzQppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwlzN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzRZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwlzN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzSJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwlzSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwlzSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzS5pAEeOXzvVK2MY5wA" 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="_cwlzTJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlzTppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzUJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwlzSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzU5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwlzSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzVppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwlzSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzWZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwlzSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzXJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwlzSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzX5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwlzSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzYppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwlzA5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzZZpAEeOXzvVK2MY5wA" 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="_cwlzZ5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwlzaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzappAEeOXzvVK2MY5wA" 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="_cwlza5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlzbZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzb5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwlzcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzcppAEeOXzvVK2MY5wA" 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="_cwlzc5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlzdZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzd5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwlzb5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzeppAEeOXzvVK2MY5wA" 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="_cwlzfJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwlzb5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzf5pAEeOXzvVK2MY5wA" 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="_cwlzgZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwlzSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzhJpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwlzhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzh5pAEeOXzvVK2MY5wA" 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="_cwlziJpAEeOXzvVK2MY5wA" 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="_cwlzippAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_kZqIQBliEeOVy4eWE0NqJw/208" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzi5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwlzkJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzjppAEeOXzvVK2MY5wA" 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="_cwlzkJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwlzkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzk5pAEeOXzvVK2MY5wA" 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="_cwlzlJpAEeOXzvVK2MY5wA" 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="_cwlzlppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwlzl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzmZpAEeOXzvVK2MY5wA" 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="_cwlzmppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwlzqJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlznJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlznppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlzoJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwlzrZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlzoppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlzpJpAEeOXzvVK2MY5wA" 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="_cwlzpppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlzqJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwlzqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlzqppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlzq5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwlzrJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwlzrZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwlzrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwlzr5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwlzsJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwlzsZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzsppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwlzs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlztJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlztZpAEeOXzvVK2MY5wA" 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="_cwlztppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlzuJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzuppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwlzsppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzvZpAEeOXzvVK2MY5wA" 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="_cwlzv5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwlzsppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzwppAEeOXzvVK2MY5wA" 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="_cwlzxJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwlzxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlzxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlzx5pAEeOXzvVK2MY5wA" 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="_cwlzyJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlzyppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzzJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwlzxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlzzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlzz5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwlzxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlz0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlz0ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwlzxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlz05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlz1ZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwlz1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwlz15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlz2JpAEeOXzvVK2MY5wA" 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="_cwlz2ZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwlz25pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlz3ZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwlz1ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlz3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlz4JpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwlz1ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlz4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlz45pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwlz1ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlz5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlz5ppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwlz1ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlz55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlz6ZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwlz1ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlz6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlz7JpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwlz1ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlz7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlz75pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwlzkJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwlz8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlz8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlz8ppAEeOXzvVK2MY5wA" 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="_cwlz9JpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwlz9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlz9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlz95pAEeOXzvVK2MY5wA" 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="_cwlz-JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwlz-ppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwlz_JpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwlz_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwlz_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwlz_5pAEeOXzvVK2MY5wA" 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="_cwl0AJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwl0AppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwl0BJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwlz_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwl0BZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwl0BppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwl0B5pAEeOXzvVK2MY5wA" 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="_cwl0CZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwlz_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwl0CppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwl0C5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwl0DJpAEeOXzvVK2MY5wA" 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="_cwl0DppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwlz1ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwl0D5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwl0EZpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwl0EppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwl0E5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwl0FJpAEeOXzvVK2MY5wA" 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="_cwl0FZpAEeOXzvVK2MY5wA" 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="_cwl0F5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_vY6gkBlhEeOVy4eWE0NqJw/207" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwl0GJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwl0HZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwl0GZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwl0GppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwl0G5pAEeOXzvVK2MY5wA" 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="_cwl0HZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwl0HppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwl0H5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwl0IJpAEeOXzvVK2MY5wA" 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="_cwl0IZpAEeOXzvVK2MY5wA" 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="_cwl0I5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwl0JJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwl0JZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwl0JppAEeOXzvVK2MY5wA" 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="_cwl0J5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwl0NZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwl0KZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwl0K5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwl0LZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwl0OppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwl0L5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwl0MZpAEeOXzvVK2MY5wA" 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="_cwl0M5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwl0NZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwl0NppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwl0N5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwl0OJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwl0OZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwl0OppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwl0O5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwl0PJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwl0PZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwl0PppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwl0P5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwl0QJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwl0QZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwl0QppAEeOXzvVK2MY5wA" 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="_cwl0Q5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwl0RZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwl0R5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwl0P5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwl0SJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwl0SZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwl0SppAEeOXzvVK2MY5wA" 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="_cwl0TJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwl0P5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwl0TZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwl0TppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwl0T5pAEeOXzvVK2MY5wA" 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="_cwl0UZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwl0UppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwl0U5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwl0VJpAEeOXzvVK2MY5wA" 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="_cwl0VZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwl0V5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwl0WZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwl0UZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwl0WppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwl0XJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwl0UZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwl0XZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwl0X5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwl0UZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwl0YJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwl0YppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwl0Y5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwl0ZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwl0ZZpAEeOXzvVK2MY5wA" 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="_cwl0ZppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwl0aJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwl0appAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwl0YppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwl0a5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwl0bZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwl0YppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwl0bppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwl0cJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwl0YppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwl0cZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwl0c5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwl0YppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwl0dJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwl0dppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwl0YppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwl0d5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwl0eZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwl0YppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwl0eppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwl0fJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwl0HZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwl0fZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwl0fppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwl0f5pAEeOXzvVK2MY5wA" 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="_cwl0gZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwl0gppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwl0g5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwl0hJpAEeOXzvVK2MY5wA" 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="_cwl0hZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwl0h5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwl0iZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwl0ippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwl0i5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwl0jJpAEeOXzvVK2MY5wA" 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="_cwl0jZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwl0j5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwl0kZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwl0iZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwl0kppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwl0k5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwl0lJpAEeOXzvVK2MY5wA" 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="_cwl0lppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwl0iZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwl0l5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmYgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmYgZpAEeOXzvVK2MY5wA" 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="_cwmYg5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwl0YppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmYhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmYhppAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwmYh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmYiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmYiZpAEeOXzvVK2MY5wA" 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="_cwmYippAEeOXzvVK2MY5wA" 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="_cwmYjJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_RgwlEBlhEeOVy4eWE0NqJw/206" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmYjZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwmYkppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmYjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmYj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmYkJpAEeOXzvVK2MY5wA" 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="_cwmYkppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwmYk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmYlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmYlZpAEeOXzvVK2MY5wA" 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="_cwmYlppAEeOXzvVK2MY5wA" 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="_cwmYmJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwmYmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmYmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmYm5pAEeOXzvVK2MY5wA" 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="_cwmYnJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwmYqppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmYnppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmYoJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmYoppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwmYr5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmYpJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmYpppAEeOXzvVK2MY5wA" 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="_cwmYqJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwmYqppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwmYq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwmYrJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwmYrZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwmYrppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwmYr5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwmYsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwmYsZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwmYsppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwmYs5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmYtJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwmYtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmYtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmYt5pAEeOXzvVK2MY5wA" 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="_cwmYuJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmYuppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmYvJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwmYtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmYvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmYvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmYv5pAEeOXzvVK2MY5wA" 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="_cwmYwZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwmYtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmYwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmYw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmYxJpAEeOXzvVK2MY5wA" 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="_cwmYxppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwmYx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmYyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmYyZpAEeOXzvVK2MY5wA" 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="_cwmYyppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmYzJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmYzppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwmYxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmYz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmY0ZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwmYxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmY0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmY1JpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwmYxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmY1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmY15pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwmY2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwmY2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmY2ppAEeOXzvVK2MY5wA" 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="_cwmY25pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmY3ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmY35pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwmY15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmY4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmY4ppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwmY15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmY45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmY5ZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwmY15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmY5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmY6JpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwmY15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmY6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmY65pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwmY15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmY7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmY7ppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwmY15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmY75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmY8ZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwmYkppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmY8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmY85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmY9JpAEeOXzvVK2MY5wA" 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="_cwmY9ppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwmY95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmY-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmY-ZpAEeOXzvVK2MY5wA" 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="_cwmY-ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmY_JpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmY_ppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwmY_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZAZpAEeOXzvVK2MY5wA" 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="_cwmZAppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmZBJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZBppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwmY_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZCZpAEeOXzvVK2MY5wA" 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="_cwmZC5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwmY_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZDppAEeOXzvVK2MY5wA" 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="_cwmZEJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwmY15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZE5pAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwmZFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZFppAEeOXzvVK2MY5wA" 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="_cwmZF5pAEeOXzvVK2MY5wA" 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="_cwmZGZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_Jqkr8BlhEeOVy4eWE0NqJw/205" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZGppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwmZH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZHZpAEeOXzvVK2MY5wA" 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="_cwmZH5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwmZIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZIppAEeOXzvVK2MY5wA" 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="_cwmZI5pAEeOXzvVK2MY5wA" 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="_cwmZJZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwmZJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZKJpAEeOXzvVK2MY5wA" 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="_cwmZKZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwmZN5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmZK5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmZLZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmZL5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwmZPJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmZMZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmZM5pAEeOXzvVK2MY5wA" 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="_cwmZNZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwmZN5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwmZOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwmZOZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwmZOppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwmZO5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwmZPJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwmZPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwmZPppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwmZP5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwmZQJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZQZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwmZQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZRJpAEeOXzvVK2MY5wA" 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="_cwmZRZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmZR5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZSZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwmZQZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZTJpAEeOXzvVK2MY5wA" 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="_cwmZTppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwmZQZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZUZpAEeOXzvVK2MY5wA" 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="_cwmZU5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwmZVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZVppAEeOXzvVK2MY5wA" 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="_cwmZV5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmZWZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZW5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwmZU5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZXppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwmZU5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZYZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwmZU5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZZJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwmZZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwmZZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZZ5pAEeOXzvVK2MY5wA" 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="_cwmZaJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmZappAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZbJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwmZZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZb5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwmZZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZcppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwmZZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZdZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwmZZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZeJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwmZZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZe5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwmZZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZfppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwmZH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZgZpAEeOXzvVK2MY5wA" 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="_cwmZg5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwmZhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZhppAEeOXzvVK2MY5wA" 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="_cwmZh5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmZiZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZi5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwmZjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZjppAEeOXzvVK2MY5wA" 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="_cwmZj5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmZkZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZk5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwmZi5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZlppAEeOXzvVK2MY5wA" 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="_cwmZmJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwmZi5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZm5pAEeOXzvVK2MY5wA" 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="_cwmZnZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwmZZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZoJpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwmZoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZo5pAEeOXzvVK2MY5wA" 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="_cwmZpJpAEeOXzvVK2MY5wA" 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="_cwmZpppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_yFppEBlgEeOVy4eWE0NqJw/204" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZp5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwmZrJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZqppAEeOXzvVK2MY5wA" 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="_cwmZrJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwmZrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZr5pAEeOXzvVK2MY5wA" 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="_cwmZsJpAEeOXzvVK2MY5wA" 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="_cwmZsppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwmZs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZtJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZtZpAEeOXzvVK2MY5wA" 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="_cwmZtppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwmZxJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmZuJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmZuppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmZvJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwmZyZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmZvppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmZwJpAEeOXzvVK2MY5wA" 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="_cwmZwppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwmZxJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwmZxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwmZxppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwmZx5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwmZyJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwmZyZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwmZyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwmZy5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwmZzJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwmZzZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZzppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwmZz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZ0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZ0ZpAEeOXzvVK2MY5wA" 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="_cwmZ0ppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmZ1JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZ1ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwmZzppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZ15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZ2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZ2ZpAEeOXzvVK2MY5wA" 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="_cwmZ25pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwmZzppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZ3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZ3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZ3ppAEeOXzvVK2MY5wA" 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="_cwmZ4JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwmZ4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmZ4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZ45pAEeOXzvVK2MY5wA" 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="_cwmZ5JpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmZ5ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZ6JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwmZ4JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZ6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZ65pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwmZ4JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZ7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZ7ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwmZ4JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZ75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZ8ZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwmZ8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwmZ85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmZ9JpAEeOXzvVK2MY5wA" 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="_cwmZ9ZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmZ95pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZ-ZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwmZ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZ-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZ_JpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwmZ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmZ_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmZ_5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwmZ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmaAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmaAppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwmZ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmaA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmaBZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwmZ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmaBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmaCJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwmZ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmaCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmaC5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwmZrJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmaDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmaDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmaDppAEeOXzvVK2MY5wA" 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="_cwmaEJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwmaEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmaEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmaE5pAEeOXzvVK2MY5wA" 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="_cwmaFJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmaFppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmaGJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwmaGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmaGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmaG5pAEeOXzvVK2MY5wA" 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="_cwmaHJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmaHppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmaIJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwmaGJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmaIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmaIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmaI5pAEeOXzvVK2MY5wA" 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="_cwmaJZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwmaGJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmaJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmaJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmaKJpAEeOXzvVK2MY5wA" 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="_cwmaKppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwmZ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmaK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmaLZpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwmaLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmaL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmaMJpAEeOXzvVK2MY5wA" 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="_cwmaMZpAEeOXzvVK2MY5wA" 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="_cwmaM5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_k3IZUBlgEeOVy4eWE0NqJw/203" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmaNJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwmaOZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmaNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmaNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmaN5pAEeOXzvVK2MY5wA" 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="_cwmaOZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwmaOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmaO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmaPJpAEeOXzvVK2MY5wA" 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="_cwmaPZpAEeOXzvVK2MY5wA" 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="_cwmaP5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwmaQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmaQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmaQppAEeOXzvVK2MY5wA" 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="_cwmaQ5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwmaUZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmaRZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmaR5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmaSZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwmaVppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmaS5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmaTZpAEeOXzvVK2MY5wA" 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="_cwmaT5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwmaUZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwmaUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwmaU5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwmaVJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwmaVZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwmaVppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwmaV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwmaWJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwmaWZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwmaWppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmaW5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwmaXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmaXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmaXppAEeOXzvVK2MY5wA" 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="_cwmaX5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmaYZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmaY5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwmaW5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmaZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmaZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmaZppAEeOXzvVK2MY5wA" 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="_cwmaaJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwmaW5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmaaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmaappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmaa5pAEeOXzvVK2MY5wA" 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="_cwmabZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwmabppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmab5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmacJpAEeOXzvVK2MY5wA" 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="_cwmacZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmac5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmadZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwmabZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmadppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmaeJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwmabZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmaeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmae5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwmabZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmafJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmafppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwmaf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwmagJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmagZpAEeOXzvVK2MY5wA" 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="_cwmagppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmahJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmahppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwmafppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmah5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmaiZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwmafppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmaippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmajJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwmafppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmajZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmaj5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwmafppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmakJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmakppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwmafppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmak5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmalZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwmafppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmalppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmamJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwmaOZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmamZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmamppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmam5pAEeOXzvVK2MY5wA" 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="_cwmanZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwmanppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwman5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmaoJpAEeOXzvVK2MY5wA" 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="_cwmaoZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmao5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmapZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwmapppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmap5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmaqJpAEeOXzvVK2MY5wA" 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="_cwmaqZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmaq5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmarZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwmapZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmarppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmar5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmasJpAEeOXzvVK2MY5wA" 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="_cwmasppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwmapZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmas5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmatJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmatZpAEeOXzvVK2MY5wA" 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="_cwmat5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwmafppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmauJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmauppAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwmau5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmavJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmavZpAEeOXzvVK2MY5wA" 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="_cwmavppAEeOXzvVK2MY5wA" 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="_cwmawJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_X9lUABlgEeOVy4eWE0NqJw/202" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmawZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwmaxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmawppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmaw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmaxJpAEeOXzvVK2MY5wA" 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="_cwmaxppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwmax5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmayJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmayZpAEeOXzvVK2MY5wA" 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="_cwmayppAEeOXzvVK2MY5wA" 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="_cwmazJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwmazZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmazppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmaz5pAEeOXzvVK2MY5wA" 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="_cwma0JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwma3ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwma0ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwma1JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwma1ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwma45pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwma2JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwma2ppAEeOXzvVK2MY5wA" 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="_cwma3JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwma3ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwma35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwma4JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwma4ZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwma4ppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwma45pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwma5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwma5ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwma5ppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwma55pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwma6JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwma6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwma6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwma65pAEeOXzvVK2MY5wA" 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="_cwma7JpAEeOXzvVK2MY5wA" 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="_cwma7ppAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwma8JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwma8ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwma6JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwma85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwma9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwma9ZpAEeOXzvVK2MY5wA" 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="_cwma95pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwma6JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwma-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwma-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwma-ppAEeOXzvVK2MY5wA" 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="_cwma_JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwma_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwma_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwma_5pAEeOXzvVK2MY5wA" 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="_cwmbAJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmbAppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbBJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwma_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmbBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbB5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwma_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmbCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbCppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwma_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmbC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbDZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwmbDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwmbD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmbEJpAEeOXzvVK2MY5wA" 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="_cwmbEZpAEeOXzvVK2MY5wA" 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="_cwmbE5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmbFZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbF5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwmbDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmbGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbGppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwmbDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmbG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbHZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwmbDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmbHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbIJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwmbDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmbIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbI5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwmbDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmbJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbJppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwmbDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmbJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbKZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwmaxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmbKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmbK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmbLJpAEeOXzvVK2MY5wA" 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="_cwmbLppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwmbL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmbMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmbMZpAEeOXzvVK2MY5wA" 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="_cwmbMppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmbNJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbNppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwmbN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmbOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmbOZpAEeOXzvVK2MY5wA" 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="_cwmbOppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmbPJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbPppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwmbNppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmbP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmbQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmbQZpAEeOXzvVK2MY5wA" 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="_cwmbQ5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwmbNppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmbRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmbRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmbRppAEeOXzvVK2MY5wA" 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="_cwmbSJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwmbDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmbSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbS5pAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwmbTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmbTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmbTppAEeOXzvVK2MY5wA" 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="_cwmbT5pAEeOXzvVK2MY5wA" 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="_cwmbUZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_FoBj4BleEeOVy4eWE0NqJw/201" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbUppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwmbV5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmbU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmbVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmbVZpAEeOXzvVK2MY5wA" 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="_cwmbV5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwmbWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmbWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmbWppAEeOXzvVK2MY5wA" 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="_cwmbW5pAEeOXzvVK2MY5wA" 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="_cwmbXZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwmbXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmbX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmbYJpAEeOXzvVK2MY5wA" 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="_cwmbYZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwmbb5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmbY5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmbZZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmbZ5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwmbdJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwmbaZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmba5pAEeOXzvVK2MY5wA" 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="_cwmbbZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwmbb5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwmbcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwmbcZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwmbcppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwmbc5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwmbdJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwmbdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwmbdppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwmbd5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwmbeJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbeZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwmbeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmbe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmbfJpAEeOXzvVK2MY5wA" 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="_cwmbfZpAEeOXzvVK2MY5wA" 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="_cwmbf5pAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmbgZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbg5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwmbeZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmbhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmbhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmbhppAEeOXzvVK2MY5wA" 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="_cwmbiJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwmbeZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmbiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmbippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmbi5pAEeOXzvVK2MY5wA" 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="_cwmbjZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwmbjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwmbj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmbkJpAEeOXzvVK2MY5wA" 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="_cwmbkZpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmbk5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmblZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwmbjZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmblppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbmJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwmbjZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmbmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbm5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwmbjZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwmbnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwmbnppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwmbn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwmboJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwmboZpAEeOXzvVK2MY5wA" 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="_cwmboppAEeOXzvVK2MY5wA" 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="_cwmbpJpAEeOXzvVK2MY5wA" name="base_Pin" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Pin"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwmbpppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwm_kJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwmbnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwm_kZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwm_k5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwmbnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwm_lJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwm_lppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwmbnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwm_l5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwm_mZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwmbnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwm_mppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwm_nJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwmbnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwm_nZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwm_n5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwmbnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwm_oJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwm_oppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwmbV5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwm_o5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwm_pJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwm_pZpAEeOXzvVK2MY5wA" 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="_cwm_p5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwm_qJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwm_qZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwm_qppAEeOXzvVK2MY5wA" 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="_cwm_q5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwm_rZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwm_r5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwm_sJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwm_sZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwm_sppAEeOXzvVK2MY5wA" 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="_cwm_s5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwm_tZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwm_t5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwm_r5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwm_uJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwm_uZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwm_uppAEeOXzvVK2MY5wA" 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="_cwm_vJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwm_r5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwm_vZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwm_vppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwm_v5pAEeOXzvVK2MY5wA" 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="_cwm_wZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwmbnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwm_wppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwm_xJpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwm_xZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwm_xppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwm_x5pAEeOXzvVK2MY5wA" 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="_cwm_yJpAEeOXzvVK2MY5wA" 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="_cwm_yppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_T_OHQBYOEeOO18EfFkykTQ/200" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwm_y5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwm_0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwm_zJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwm_zZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwm_zppAEeOXzvVK2MY5wA" 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="_cwm_0JpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwm_0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwm_0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwm_05pAEeOXzvVK2MY5wA" 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="_cwm_1JpAEeOXzvVK2MY5wA" 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="_cwm_1ppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwm_15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwm_2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwm_2ZpAEeOXzvVK2MY5wA" 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="_cwm_2ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwm_6JpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwm_3JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwm_3ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwm_4JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwm_7ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwm_4ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwm_5JpAEeOXzvVK2MY5wA" 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="_cwm_5ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwm_6JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwm_6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwm_6ppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwm_65pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwm_7JpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwm_7ZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwm_7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwm_75pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwm_8JpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwm_8ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwm_8ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwm_85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwm_9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwm_9ZpAEeOXzvVK2MY5wA" 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="_cwm_9ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwm_-JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwm_8ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwm_-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwm_-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwm_-5pAEeOXzvVK2MY5wA" 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="_cwm__ZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwm_8ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwm__ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwm__5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnAAJpAEeOXzvVK2MY5wA" 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="_cwnAAppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwnAA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnABJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnABZpAEeOXzvVK2MY5wA" 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="_cwnABppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnACJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwnAAppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnACZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAC5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwnAAppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnADJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnADppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwnAAppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAEZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwnAEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwnAE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnAFJpAEeOXzvVK2MY5wA" 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="_cwnAFZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAF5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwnAEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAGppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwnAEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAHZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwnAEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAIJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwnAEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAI5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwnAEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAJppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwnAEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAKZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwm_0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnAK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnALJpAEeOXzvVK2MY5wA" 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="_cwnALppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwnAL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnAMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnAMZpAEeOXzvVK2MY5wA" 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="_cwnAMppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnANJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnANppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwnAN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnAOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnAOZpAEeOXzvVK2MY5wA" 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="_cwnAOppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnAPJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAPppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwnANppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnAQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnAQZpAEeOXzvVK2MY5wA" 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="_cwnAQ5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwnANppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnARJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnARZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnARppAEeOXzvVK2MY5wA" 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="_cwnASJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwnAEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnASZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAS5pAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwnATJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnATZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnATppAEeOXzvVK2MY5wA" 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="_cwnAT5pAEeOXzvVK2MY5wA" 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="_cwnAUZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_tal1wBYLEeOO18EfFkykTQ/199" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAUppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwnAV5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnAVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnAVZpAEeOXzvVK2MY5wA" 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="_cwnAV5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwnAWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnAWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnAWppAEeOXzvVK2MY5wA" 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="_cwnAW5pAEeOXzvVK2MY5wA" 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="_cwnAXZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwnAXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnAX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnAYJpAEeOXzvVK2MY5wA" 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="_cwnAYZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwnAb5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnAY5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnAZZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnAZ5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwnAdJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnAaZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnAa5pAEeOXzvVK2MY5wA" 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="_cwnAbZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnAb5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwnAcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnAcZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnAcppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwnAc5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnAdJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwnAdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnAdppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnAd5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwnAeJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAeZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwnAeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnAe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnAfJpAEeOXzvVK2MY5wA" 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="_cwnAfZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAf5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwnAeZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnAgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnAgppAEeOXzvVK2MY5wA" 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="_cwnAhJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwnAeZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnAhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnAh5pAEeOXzvVK2MY5wA" 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="_cwnAiZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwnAippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnAi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnAjJpAEeOXzvVK2MY5wA" 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="_cwnAjZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAj5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwnAiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAkppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwnAiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAlZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwnAiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAmJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwnAmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwnAmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnAm5pAEeOXzvVK2MY5wA" 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="_cwnAnJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAnppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwnAmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAoZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwnAmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnApJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwnAmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnApZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAp5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwnAmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAqppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwnAmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnArZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwnAmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnArppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAsJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwnAV5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnAsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnAs5pAEeOXzvVK2MY5wA" 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="_cwnAtZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwnAtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnAt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnAuJpAEeOXzvVK2MY5wA" 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="_cwnAuZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnAu5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAvZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwnAvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnAv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnAwJpAEeOXzvVK2MY5wA" 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="_cwnAwZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnAw5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnAxZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwnAvZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnAx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnAyJpAEeOXzvVK2MY5wA" 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="_cwnAyppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwnAvZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnAy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnAzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnAzZpAEeOXzvVK2MY5wA" 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="_cwnAz5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwnAmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnA0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnA0ppAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwnA05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnA1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnA1ZpAEeOXzvVK2MY5wA" 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="_cwnA1ppAEeOXzvVK2MY5wA" 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="_cwnA2JpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_DA5aoBVuEeOn26SfTPTaEA/198" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnA2ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwnA3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnA2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnA25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnA3JpAEeOXzvVK2MY5wA" 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="_cwnA3ppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwnA35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnA4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnA4ZpAEeOXzvVK2MY5wA" 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="_cwnA4ppAEeOXzvVK2MY5wA" 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="_cwnA5JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwnA5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnA5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnA55pAEeOXzvVK2MY5wA" 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="_cwnA6JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwnA9ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnA6ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnA7JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnA7ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwnA-5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnA8JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnA8ppAEeOXzvVK2MY5wA" 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="_cwnA9JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnA9ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwnA95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnA-JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnA-ZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwnA-ppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnA-5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwnA_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnA_ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnA_ppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwnA_5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBAJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwnBAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBA5pAEeOXzvVK2MY5wA" 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="_cwnBBJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBBppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwnBAJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBCZpAEeOXzvVK2MY5wA" 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="_cwnBC5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwnBAJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBDppAEeOXzvVK2MY5wA" 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="_cwnBEJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwnBEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBE5pAEeOXzvVK2MY5wA" 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="_cwnBFJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBFppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwnBEJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBGZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwnBEJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBHJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwnBEJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBH5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwnBIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwnBIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBIppAEeOXzvVK2MY5wA" 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="_cwnBI5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBJZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwnBH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBKJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwnBH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBK5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwnBH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBLppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwnBH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBMZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwnBH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBNJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwnBH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBN5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwnA3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBOppAEeOXzvVK2MY5wA" 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="_cwnBPJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwnBPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBP5pAEeOXzvVK2MY5wA" 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="_cwnBQJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnBQppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBRJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwnBRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBR5pAEeOXzvVK2MY5wA" 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="_cwnBSJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnBSppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBTJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwnBRJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBT5pAEeOXzvVK2MY5wA" 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="_cwnBUZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwnBRJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBVJpAEeOXzvVK2MY5wA" 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="_cwnBVppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwnBH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBWZpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwnBWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBXJpAEeOXzvVK2MY5wA" 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="_cwnBXZpAEeOXzvVK2MY5wA" 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="_cwnBX5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_x_2jMBVnEeOn26SfTPTaEA/197" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBYJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwnBZZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBY5pAEeOXzvVK2MY5wA" 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="_cwnBZZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwnBZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBaJpAEeOXzvVK2MY5wA" 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="_cwnBaZpAEeOXzvVK2MY5wA" 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="_cwnBa5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwnBbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBbppAEeOXzvVK2MY5wA" 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="_cwnBb5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwnBfZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnBcZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnBc5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnBdZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwnBgppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnBd5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnBeZpAEeOXzvVK2MY5wA" 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="_cwnBe5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnBfZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwnBfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnBf5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnBgJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwnBgZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnBgppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwnBg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnBhJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnBhZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwnBhppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBh5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwnBiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBippAEeOXzvVK2MY5wA" 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="_cwnBi5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBjZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwnBh5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBkJpAEeOXzvVK2MY5wA" 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="_cwnBkppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwnBh5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBlZpAEeOXzvVK2MY5wA" 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="_cwnBl5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwnBmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBmppAEeOXzvVK2MY5wA" 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="_cwnBm5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBnZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwnBl5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBoJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwnBl5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBo5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwnBl5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBpppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwnBp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwnBqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBqZpAEeOXzvVK2MY5wA" 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="_cwnBqppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBrJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwnBpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBr5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwnBpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBsppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwnBpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBtZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwnBpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBuJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwnBpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBu5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwnBpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBvppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwnBZZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnBv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBwZpAEeOXzvVK2MY5wA" 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="_cwnBw5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwnBxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBxppAEeOXzvVK2MY5wA" 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="_cwnBx5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnByZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnBy5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwnBzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnBzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnBzppAEeOXzvVK2MY5wA" 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="_cwnBz5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnB0ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnB05pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwnBy5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnB1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnB1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnB1ppAEeOXzvVK2MY5wA" 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="_cwnB2JpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwnBy5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnB2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnB2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnB25pAEeOXzvVK2MY5wA" 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="_cwnB3ZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwnBpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnB3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnB4JpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwnB4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnB4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnB45pAEeOXzvVK2MY5wA" 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="_cwnB5JpAEeOXzvVK2MY5wA" 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="_cwnB5ppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_vHM7EBVnEeOn26SfTPTaEA/196" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnB55pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwnB7JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnB6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnB6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnB6ppAEeOXzvVK2MY5wA" 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="_cwnB7JpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwnB7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnB7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnB75pAEeOXzvVK2MY5wA" 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="_cwnB8JpAEeOXzvVK2MY5wA" 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="_cwnB8ppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwnB85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnB9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnB9ZpAEeOXzvVK2MY5wA" 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="_cwnB9ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwnCBJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnB-JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnB-ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnB_JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwnCCZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnB_ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnCAJpAEeOXzvVK2MY5wA" 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="_cwnCAppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnCBJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwnCBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnCBppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnCB5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwnCCJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnCCZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwnCCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnCC5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnCDJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwnCDZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCDppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwnCD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnCEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCEZpAEeOXzvVK2MY5wA" 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="_cwnCEppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCFJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwnCDppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnCFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCF5pAEeOXzvVK2MY5wA" 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="_cwnCGZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwnCDppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnCG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCHJpAEeOXzvVK2MY5wA" 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="_cwnCHppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwnCH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnCIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCIZpAEeOXzvVK2MY5wA" 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="_cwnCIppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCJJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwnCHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCJ5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwnCHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCKppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwnCHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCLZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwnCLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwnCL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCMJpAEeOXzvVK2MY5wA" 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="_cwnCMZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCM5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwnCLZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCNppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwnCLZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCOZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwnCLZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCPJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwnCLZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCP5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwnCLZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCQppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwnCLZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCRZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwnB7JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnCR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCSJpAEeOXzvVK2MY5wA" 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="_cwnCSppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwnCS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnCTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCTZpAEeOXzvVK2MY5wA" 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="_cwnCTppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnCUJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCUppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwnCU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnCVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCVZpAEeOXzvVK2MY5wA" 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="_cwnCVppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnCWJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCWppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwnCUppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnCXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCXZpAEeOXzvVK2MY5wA" 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="_cwnCX5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwnCUppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnCYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCYppAEeOXzvVK2MY5wA" 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="_cwnCZJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwnCLZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCZ5pAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwnCaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnCaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCappAEeOXzvVK2MY5wA" 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="_cwnCa5pAEeOXzvVK2MY5wA" 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="_cwnCbZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_ZXtIwBVnEeOn26SfTPTaEA/195" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCbppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwnCc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnCcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCcZpAEeOXzvVK2MY5wA" 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="_cwnCc5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwnCdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnCdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCdppAEeOXzvVK2MY5wA" 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="_cwnCd5pAEeOXzvVK2MY5wA" 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="_cwnCeZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwnCeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnCe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCfJpAEeOXzvVK2MY5wA" 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="_cwnCfZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwnCi5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnCf5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnCgZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnCg5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwnCkJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnChZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnCh5pAEeOXzvVK2MY5wA" 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="_cwnCiZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnCi5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwnCjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnCjZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnCjppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwnCj5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnCkJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwnCkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnCkppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnCk5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwnClJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnClZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwnClppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnCl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCmJpAEeOXzvVK2MY5wA" 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="_cwnCmZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCm5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwnClZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnCnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCnppAEeOXzvVK2MY5wA" 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="_cwnCoJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwnClZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnCoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCo5pAEeOXzvVK2MY5wA" 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="_cwnCpZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwnCpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnCp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCqJpAEeOXzvVK2MY5wA" 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="_cwnCqZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCq5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwnCpZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCrppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwnCpZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCsZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwnCpZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCtJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwnCtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwnCtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCt5pAEeOXzvVK2MY5wA" 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="_cwnCuJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCuppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwnCtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCvZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwnCtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCwJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwnCtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCw5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwnCtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCxppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwnCtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCyZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwnCtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnCzJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwnCc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnCzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnCzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnCz5pAEeOXzvVK2MY5wA" 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="_cwnC0ZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwnC0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnC05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnC1JpAEeOXzvVK2MY5wA" 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="_cwnC1ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnmoZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnmo5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwnmpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnmpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnmpppAEeOXzvVK2MY5wA" 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="_cwnmp5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnmqZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnmq5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwnmo5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnmrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnmrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnmrppAEeOXzvVK2MY5wA" 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="_cwnmsJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwnmo5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnmsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnmsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnms5pAEeOXzvVK2MY5wA" 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="_cwnmtZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwnCtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnmtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnmuJpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwnmuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnmuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnmu5pAEeOXzvVK2MY5wA" 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="_cwnmvJpAEeOXzvVK2MY5wA" 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="_cwnmvppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_Jamy4BVnEeOn26SfTPTaEA/194" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnmv5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwnmxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnmwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnmwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnmwppAEeOXzvVK2MY5wA" 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="_cwnmxJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwnmxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnmxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnmx5pAEeOXzvVK2MY5wA" 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="_cwnmyJpAEeOXzvVK2MY5wA" 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="_cwnmyppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwnmy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnmzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnmzZpAEeOXzvVK2MY5wA" 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="_cwnmzppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwnm3JpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnm0JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnm0ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnm1JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwnm4ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnm1ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnm2JpAEeOXzvVK2MY5wA" 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="_cwnm2ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnm3JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwnm3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnm3ppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnm35pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwnm4JpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnm4ZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwnm4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnm45pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnm5JpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwnm5ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnm5ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwnm55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnm6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnm6ZpAEeOXzvVK2MY5wA" 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="_cwnm6ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnm7JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwnm5ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnm7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnm7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnm75pAEeOXzvVK2MY5wA" 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="_cwnm8ZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwnm5ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnm8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnm9JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwnm9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnm9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnm95pAEeOXzvVK2MY5wA" 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="_cwnm-JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnm-ppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwnm9JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnm-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnm_ZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwnm9JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnm_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnAJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwnm9JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnA5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwnnBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwnnBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnnBppAEeOXzvVK2MY5wA" 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="_cwnnB5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnCZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwnnA5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnDJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwnnA5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnD5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwnnA5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnEppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwnnA5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnFZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwnnA5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnGJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwnnA5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnG5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwnmxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnnHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnnHppAEeOXzvVK2MY5wA" 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="_cwnnIJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwnnIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnnIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnnI5pAEeOXzvVK2MY5wA" 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="_cwnnJJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnnJppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnKJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwnnKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnnKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnnK5pAEeOXzvVK2MY5wA" 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="_cwnnLJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnnLppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnMJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwnnKJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnnMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnnM5pAEeOXzvVK2MY5wA" 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="_cwnnNZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwnnKJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnnN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnnOJpAEeOXzvVK2MY5wA" 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="_cwnnOppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwnnA5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnPZpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwnnPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnnP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnnQJpAEeOXzvVK2MY5wA" 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="_cwnnQZpAEeOXzvVK2MY5wA" 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="_cwnnQ5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_rLB14BVmEeOn26SfTPTaEA/193" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnRJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwnnSZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnnRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnnR5pAEeOXzvVK2MY5wA" 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="_cwnnSZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwnnSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnnS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnnTJpAEeOXzvVK2MY5wA" 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="_cwnnTZpAEeOXzvVK2MY5wA" 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="_cwnnT5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwnnUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnnUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnnUppAEeOXzvVK2MY5wA" 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="_cwnnU5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwnnYZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnnVZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnnV5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnnWZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwnnZppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnnW5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnnXZpAEeOXzvVK2MY5wA" 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="_cwnnX5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnnYZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwnnYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnnY5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnnZJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwnnZZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnnZppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwnnZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnnaJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnnaZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwnnappAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnna5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwnnbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnnbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnnbppAEeOXzvVK2MY5wA" 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="_cwnnb5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnncZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwnna5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnncppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnnc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnndJpAEeOXzvVK2MY5wA" 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="_cwnndppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwnna5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnneZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwnneppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnne5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnnfJpAEeOXzvVK2MY5wA" 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="_cwnnfZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnf5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwnneZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnngJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnngppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwnneZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnng5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnhZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwnneZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnniJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwnniZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwnnippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnni5pAEeOXzvVK2MY5wA" 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="_cwnnjJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnjppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwnniJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnkZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwnniJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnlJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwnniJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnl5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwnniJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnmppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwnniJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnnZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwnniJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnoJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwnnSZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnnoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnno5pAEeOXzvVK2MY5wA" 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="_cwnnpZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwnnpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnnp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnnqJpAEeOXzvVK2MY5wA" 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="_cwnnqZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnnq5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnrZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwnnrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnnr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnnsJpAEeOXzvVK2MY5wA" 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="_cwnnsZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnns5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnntZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwnnrZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnntppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnnt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnnuJpAEeOXzvVK2MY5wA" 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="_cwnnuppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwnnrZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnnvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnnvZpAEeOXzvVK2MY5wA" 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="_cwnnv5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwnniJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnwppAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwnnw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnnxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnnxZpAEeOXzvVK2MY5wA" 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="_cwnnxppAEeOXzvVK2MY5wA" 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="_cwnnyJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_icf_gBVmEeOn26SfTPTaEA/192" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnnyZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwnnzppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnnyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnny5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnnzJpAEeOXzvVK2MY5wA" 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="_cwnnzppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwnnz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnn0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnn0ZpAEeOXzvVK2MY5wA" 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="_cwnn0ppAEeOXzvVK2MY5wA" 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="_cwnn1JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwnn1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnn1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnn15pAEeOXzvVK2MY5wA" 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="_cwnn2JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwnn5ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnn2ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnn3JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnn3ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwnn65pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnn4JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnn4ppAEeOXzvVK2MY5wA" 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="_cwnn5JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnn5ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwnn55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnn6JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnn6ZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwnn6ppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnn65pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwnn7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnn7ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnn7ppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwnn75pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnn8JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwnn8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnn8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnn85pAEeOXzvVK2MY5wA" 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="_cwnn9JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnn9ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwnn8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnn95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnn-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnn-ZpAEeOXzvVK2MY5wA" 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="_cwnn-5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwnn8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnn_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnn_ppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwnn_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnoAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnoAZpAEeOXzvVK2MY5wA" 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="_cwnoAppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoBJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwnn_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoB5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwnn_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoCppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwnn_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoDZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwnoDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwnoD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnoEJpAEeOXzvVK2MY5wA" 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="_cwnoEZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoE5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwnoDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoFppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwnoDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoGZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwnoDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoHJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwnoDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoH5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwnoDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoIppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwnoDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoJZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwnnzppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnoJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnoKJpAEeOXzvVK2MY5wA" 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="_cwnoKppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwnoK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnoLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnoLZpAEeOXzvVK2MY5wA" 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="_cwnoLppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnoMJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoMppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwnoM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnoNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnoNZpAEeOXzvVK2MY5wA" 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="_cwnoNppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnoOJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoOppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwnoMppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnoPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnoPZpAEeOXzvVK2MY5wA" 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="_cwnoP5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwnoMppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnoQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnoQppAEeOXzvVK2MY5wA" 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="_cwnoRJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwnoDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoR5pAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwnoSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnoSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnoSppAEeOXzvVK2MY5wA" 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="_cwnoS5pAEeOXzvVK2MY5wA" 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="_cwnoTZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_sLthsBVkEeOn26SfTPTaEA/191" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoTppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwnoU5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnoUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnoUZpAEeOXzvVK2MY5wA" 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="_cwnoU5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwnoVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnoVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnoVppAEeOXzvVK2MY5wA" 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="_cwnoV5pAEeOXzvVK2MY5wA" 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="_cwnoWZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwnoWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnoW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnoXJpAEeOXzvVK2MY5wA" 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="_cwnoXZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwnoa5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnoX5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnoYZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnoY5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwnocJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnoZZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnoZ5pAEeOXzvVK2MY5wA" 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="_cwnoaZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnoa5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwnobJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnobZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnobppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwnob5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnocJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwnocZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnocppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnoc5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwnodJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnodZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwnodppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnod5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnoeJpAEeOXzvVK2MY5wA" 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="_cwnoeZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoe5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwnodZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnofJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnofppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwnodZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnof5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnogZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwnogppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnog5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnohJpAEeOXzvVK2MY5wA" 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="_cwnohZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoh5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwnogZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoippAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwnogZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnojZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwnogZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnojppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnokJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwnokZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwnokppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnok5pAEeOXzvVK2MY5wA" 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="_cwnolJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnolppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwnokJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnol5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnomZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwnokJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnomppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnonJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwnokJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnonZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnon5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwnokJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnooJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnooppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwnokJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnopZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwnokJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnopppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoqJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwnoU5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnoqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnoq5pAEeOXzvVK2MY5wA" 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="_cwnorZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwnorppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnor5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnosJpAEeOXzvVK2MY5wA" 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="_cwnosZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnos5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnotZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwnotppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnot5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnouJpAEeOXzvVK2MY5wA" 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="_cwnouZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnou5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnovZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwnotZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnovppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnov5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnowJpAEeOXzvVK2MY5wA" 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="_cwnowppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwnotZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnow5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnoxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnoxZpAEeOXzvVK2MY5wA" 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="_cwnox5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwnokJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnoyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnoyppAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwnoy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnozJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnozZpAEeOXzvVK2MY5wA" 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="_cwnozppAEeOXzvVK2MY5wA" 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="_cwno0JpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_lcjtoBVaEeOn26SfTPTaEA/190" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwno0ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwno1ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwno0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwno05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwno1JpAEeOXzvVK2MY5wA" 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="_cwno1ppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwno15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwno2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwno2ZpAEeOXzvVK2MY5wA" 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="_cwno2ppAEeOXzvVK2MY5wA" 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="_cwno3JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwno3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwno3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwno35pAEeOXzvVK2MY5wA" 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="_cwno4JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwno7ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwno4ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwno5JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwno5ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwno85pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwno6JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwno6ppAEeOXzvVK2MY5wA" 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="_cwno7JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwno7ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwno75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwno8JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwno8ZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwno8ppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwno85pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwno9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwno9ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwno9ppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwno95pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwno-JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwno-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwno-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwno-5pAEeOXzvVK2MY5wA" 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="_cwno_JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwno_ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwno-JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwno_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpAZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwno-JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpBJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwnpBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnpBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnpB5pAEeOXzvVK2MY5wA" 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="_cwnpCJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpCppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwnpBJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpDZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwnpBJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpEJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwnpBJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpE5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwnpFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwnpFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnpFppAEeOXzvVK2MY5wA" 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="_cwnpF5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpGZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwnpE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpHJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwnpE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpH5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwnpE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpIppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwnpE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpJZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwnpE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpKJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwnpE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpK5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwno1ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnpLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnpLppAEeOXzvVK2MY5wA" 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="_cwnpMJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwnpMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnpMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnpM5pAEeOXzvVK2MY5wA" 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="_cwnpNJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnpNppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpOJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwnpOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnpOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnpO5pAEeOXzvVK2MY5wA" 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="_cwnpPJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnpPppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpQJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwnpOJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnpQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnpQ5pAEeOXzvVK2MY5wA" 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="_cwnpRZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwnpOJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnpR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnpSJpAEeOXzvVK2MY5wA" 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="_cwnpSppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwnpE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpTZpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwnpTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnpT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnpUJpAEeOXzvVK2MY5wA" 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="_cwnpUZpAEeOXzvVK2MY5wA" 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="_cwnpU5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_jdOTIBVaEeOn26SfTPTaEA/189" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpVJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwnpWZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnpVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnpV5pAEeOXzvVK2MY5wA" 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="_cwnpWZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwnpWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnpW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnpXJpAEeOXzvVK2MY5wA" 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="_cwnpXZpAEeOXzvVK2MY5wA" 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="_cwnpX5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwnpYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnpYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnpYppAEeOXzvVK2MY5wA" 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="_cwnpY5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwnpcZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnpZZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnpZ5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnpaZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwnpdppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnpa5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnpbZpAEeOXzvVK2MY5wA" 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="_cwnpb5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnpcZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwnpcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnpc5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnpdJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwnpdZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwnpdppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwnpd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwnpeJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwnpeZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwnpeppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpe5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwnpfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnpfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnpfppAEeOXzvVK2MY5wA" 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="_cwnpf5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpgZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwnpe5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnphJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwnpe5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnphZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnph5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwnpiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnpiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnpippAEeOXzvVK2MY5wA" 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="_cwnpi5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpjZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwnph5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpkJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwnph5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpk5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwnph5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnplJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnplppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwnpl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwnpmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnpmZpAEeOXzvVK2MY5wA" 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="_cwnpmppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpnJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwnplppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpn5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwnplppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpoppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwnplppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnppZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwnplppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnppppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpqJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwnplppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpq5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwnplppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnprJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnprppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwnpWZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnpsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnpsZpAEeOXzvVK2MY5wA" 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="_cwnps5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwnptJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnptZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnptppAEeOXzvVK2MY5wA" 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="_cwnpt5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwnpuZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpu5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwnpvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnpvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnpvppAEeOXzvVK2MY5wA" 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="_cwnpv5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwnpwZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwnpw5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwnpu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnpxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnpxppAEeOXzvVK2MY5wA" 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="_cwnpyJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwnpu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwnpyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwnpy5pAEeOXzvVK2MY5wA" 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="_cwnpzZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwnplppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwnpzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoNsJpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwoNsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoNsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoNs5pAEeOXzvVK2MY5wA" 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="_cwoNtJpAEeOXzvVK2MY5wA" 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="_cwoNtppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_ieFxYBVaEeOn26SfTPTaEA/188" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoNt5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwoNvJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoNuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoNuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoNuppAEeOXzvVK2MY5wA" 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="_cwoNvJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwoNvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoNvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoNv5pAEeOXzvVK2MY5wA" 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="_cwoNwJpAEeOXzvVK2MY5wA" 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="_cwoNwppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwoNw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoNxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoNxZpAEeOXzvVK2MY5wA" 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="_cwoNxppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwoN1JpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoNyJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoNyppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoNzJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwoN2ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoNzppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwoN0JpAEeOXzvVK2MY5wA" 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="_cwoN0ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwoN1JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwoN1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwoN1ppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwoN15pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwoN2JpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwoN2ZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwoN2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwoN25pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwoN3JpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwoN3ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoN3ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwoN35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoN4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoN4ZpAEeOXzvVK2MY5wA" 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="_cwoN4ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoN5JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwoN3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoN5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoN55pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwoN3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoN6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoN6ppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwoN65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoN7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoN7ZpAEeOXzvVK2MY5wA" 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="_cwoN7ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoN8JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwoN6ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoN8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoN85pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwoN6ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoN9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoN9ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwoN6ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoN95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoN-ZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwoN-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwoN-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoN_JpAEeOXzvVK2MY5wA" 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="_cwoN_ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoN_5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwoN-ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOAppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwoN-ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOBZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwoN-ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOCJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwoN-ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOC5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwoN-ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoODJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoODppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwoN-ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOEZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwoNvJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOFJpAEeOXzvVK2MY5wA" 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="_cwoOFppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwoOF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOGZpAEeOXzvVK2MY5wA" 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="_cwoOGppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoOHJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOHppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwoOH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOIZpAEeOXzvVK2MY5wA" 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="_cwoOIppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwoOJJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOJppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwoOHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOKZpAEeOXzvVK2MY5wA" 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="_cwoOK5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwoOHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOLppAEeOXzvVK2MY5wA" 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="_cwoOMJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwoN-ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOM5pAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwoONJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoONZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoONppAEeOXzvVK2MY5wA" 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="_cwoON5pAEeOXzvVK2MY5wA" 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="_cwoOOZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_UOGdkBVaEeOn26SfTPTaEA/187" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOOppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwoOP5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOPZpAEeOXzvVK2MY5wA" 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="_cwoOP5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwoOQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOQppAEeOXzvVK2MY5wA" 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="_cwoOQ5pAEeOXzvVK2MY5wA" 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="_cwoORZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwoORppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOSJpAEeOXzvVK2MY5wA" 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="_cwoOSZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwoOV5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoOS5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoOTZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoOT5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwoOXJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoOUZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwoOU5pAEeOXzvVK2MY5wA" 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="_cwoOVZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwoOV5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwoOWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwoOWZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwoOWppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwoOW5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwoOXJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwoOXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwoOXppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwoOX5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwoOYJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOYZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwoOYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOZJpAEeOXzvVK2MY5wA" 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="_cwoOZZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOZ5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwoOYZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOappAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwoOYZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoObZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwoObppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOcJpAEeOXzvVK2MY5wA" 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="_cwoOcZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOc5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwoObZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOdppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwoObZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOeZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwoObZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOfJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwoOfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwoOfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOf5pAEeOXzvVK2MY5wA" 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="_cwoOgJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOgppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwoOfJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOhZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwoOfJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOiJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwoOfJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOi5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwoOfJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOjppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwoOfJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOkZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwoOfJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOlJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwoOP5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOl5pAEeOXzvVK2MY5wA" 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="_cwoOmZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwoOmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOnJpAEeOXzvVK2MY5wA" 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="_cwoOnZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoOn5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOoZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwoOoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOpJpAEeOXzvVK2MY5wA" 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="_cwoOpZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwoOp5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOqZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwoOoZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOrJpAEeOXzvVK2MY5wA" 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="_cwoOrppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwoOoZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOsZpAEeOXzvVK2MY5wA" 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="_cwoOs5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwoOfJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOtJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOtppAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwoOt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOuZpAEeOXzvVK2MY5wA" 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="_cwoOuppAEeOXzvVK2MY5wA" 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="_cwoOvJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_P_LbgBVZEeOn26SfTPTaEA/186" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoOvZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwoOwppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoOvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOwJpAEeOXzvVK2MY5wA" 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="_cwoOwppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwoOw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOxZpAEeOXzvVK2MY5wA" 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="_cwoOxppAEeOXzvVK2MY5wA" 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="_cwoOyJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwoOyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoOyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoOy5pAEeOXzvVK2MY5wA" 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="_cwoOzJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwoO2ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoOzppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoO0JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoO0ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwoO35pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoO1JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwoO1ppAEeOXzvVK2MY5wA" 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="_cwoO2JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwoO2ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwoO25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwoO3JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwoO3ZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwoO3ppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwoO35pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwoO4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwoO4ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwoO4ppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwoO45pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoO5JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwoO5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoO5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoO55pAEeOXzvVK2MY5wA" 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="_cwoO6JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoO6ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwoO5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoO65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoO7ZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwoO5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoO7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoO8JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwoO8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoO8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoO85pAEeOXzvVK2MY5wA" 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="_cwoO9JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoO9ppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwoO8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoO95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoO-ZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwoO8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoO-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoO_JpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwoO8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoO_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoO_5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwoPAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwoPAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPAppAEeOXzvVK2MY5wA" 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="_cwoPA5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPBZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwoO_5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPCJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwoO_5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPC5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwoO_5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPDppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwoO_5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPEZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwoO_5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPFJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwoO_5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPF5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwoOwppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPGppAEeOXzvVK2MY5wA" 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="_cwoPHJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwoPHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPH5pAEeOXzvVK2MY5wA" 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="_cwoPIJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoPIppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPJJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwoPJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPJ5pAEeOXzvVK2MY5wA" 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="_cwoPKJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwoPKppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPLJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwoPJJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPL5pAEeOXzvVK2MY5wA" 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="_cwoPMZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwoPJJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPNJpAEeOXzvVK2MY5wA" 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="_cwoPNppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwoO_5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPOZpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwoPOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPPJpAEeOXzvVK2MY5wA" 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="_cwoPPZpAEeOXzvVK2MY5wA" 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="_cwoPP5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_3IDJ4BVYEeOn26SfTPTaEA/185" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPQJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwoPRZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPQ5pAEeOXzvVK2MY5wA" 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="_cwoPRZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwoPRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPSJpAEeOXzvVK2MY5wA" 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="_cwoPSZpAEeOXzvVK2MY5wA" 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="_cwoPS5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwoPTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPTppAEeOXzvVK2MY5wA" 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="_cwoPT5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwoPXZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoPUZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoPU5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoPVZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwoPYppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoPV5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwoPWZpAEeOXzvVK2MY5wA" 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="_cwoPW5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwoPXZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwoPXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwoPX5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwoPYJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwoPYZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwoPYppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwoPY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwoPZJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwoPZZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwoPZppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPZ5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwoPaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPappAEeOXzvVK2MY5wA" 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="_cwoPa5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPbZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwoPZ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPcJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwoPZ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPc5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwoPdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPdppAEeOXzvVK2MY5wA" 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="_cwoPd5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPeZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwoPc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPfJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwoPc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPf5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwoPc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPgppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwoPg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwoPhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPhZpAEeOXzvVK2MY5wA" 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="_cwoPhppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPiJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwoPgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPi5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwoPgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPjppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwoPgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPkZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwoPgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPlJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwoPgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPl5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwoPgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPmppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwoPRZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPnZpAEeOXzvVK2MY5wA" 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="_cwoPn5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwoPoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPoppAEeOXzvVK2MY5wA" 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="_cwoPo5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoPpZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPp5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwoPqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPqppAEeOXzvVK2MY5wA" 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="_cwoPq5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwoPrZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPr5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwoPp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPsppAEeOXzvVK2MY5wA" 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="_cwoPtJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwoPp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPt5pAEeOXzvVK2MY5wA" 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="_cwoPuZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwoPgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPvJpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwoPvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPv5pAEeOXzvVK2MY5wA" 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="_cwoPwJpAEeOXzvVK2MY5wA" 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="_cwoPwppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_HtrPcBVFEeOn26SfTPTaEA/184" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoPw5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwoPyJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoPxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPxppAEeOXzvVK2MY5wA" 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="_cwoPyJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwoPyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoPyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoPy5pAEeOXzvVK2MY5wA" 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="_cwoPzJpAEeOXzvVK2MY5wA" 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="_cwoPzppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwoPz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoP0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoP0ZpAEeOXzvVK2MY5wA" 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="_cwoP0ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwoP4JpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoP1JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoP1ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoP2JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwoP5ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoP2ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwoP3JpAEeOXzvVK2MY5wA" 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="_cwoP3ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwoP4JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwoP4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwoP4ppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwoP45pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwoP5JpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwoP5ZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwoP5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwoP55pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwoP6JpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwoP6ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoP6ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwoP65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoP7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoP7ZpAEeOXzvVK2MY5wA" 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="_cwoP7ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoP8JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwoP6ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoP8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoP85pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwoP6ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoP9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoP9ppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwoP95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoP-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoP-ZpAEeOXzvVK2MY5wA" 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="_cwoP-ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoP_JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwoP9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoP_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoP_5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwoP9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQAppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwoP9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQBZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwoQBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwoQB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoQCJpAEeOXzvVK2MY5wA" 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="_cwoQCZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQC5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwoQBZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQDppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwoQBZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQEZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwoQBZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQFJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwoQBZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQF5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwoQBZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQGppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwoQBZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQHZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwoPyJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoQH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoQIJpAEeOXzvVK2MY5wA" 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="_cwoQIppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwoQI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoQJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoQJZpAEeOXzvVK2MY5wA" 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="_cwoQJppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoQKJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQKppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwoQK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoQLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoQLZpAEeOXzvVK2MY5wA" 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="_cwoQLppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwoQMJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQMppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwoQKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoQNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoQNZpAEeOXzvVK2MY5wA" 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="_cwoQN5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwoQKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoQOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoQOppAEeOXzvVK2MY5wA" 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="_cwoQPJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwoQBZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQP5pAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwoQQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoQQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoQQppAEeOXzvVK2MY5wA" key="documentation" value="true&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwoQQ5pAEeOXzvVK2MY5wA" 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="_cwoQRZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_u31XQBVEEeOn26SfTPTaEA/183" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQRppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwoQS5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoQSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoQSZpAEeOXzvVK2MY5wA" 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="_cwoQS5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwoQTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoQTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoQTppAEeOXzvVK2MY5wA" 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="_cwoQT5pAEeOXzvVK2MY5wA" 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="_cwoQUZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwoQUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoQU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoQVJpAEeOXzvVK2MY5wA" 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="_cwoQVZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwoQY5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoQV5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoQWZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoQW5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwoQaJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoQXZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwoQX5pAEeOXzvVK2MY5wA" 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="_cwoQYZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwoQY5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwoQZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwoQZZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwoQZppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwoQZ5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwoQaJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwoQaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwoQappAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwoQa5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwoQbJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQbZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwoQbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoQb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoQcJpAEeOXzvVK2MY5wA" 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="_cwoQcZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQc5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwoQbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQdppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwoQbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQeZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwoQeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoQe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoQfJpAEeOXzvVK2MY5wA" 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="_cwoQfZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQf5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwoQeZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQgppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwoQeZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQhZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwoQeZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQiJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwoQiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwoQippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoQi5pAEeOXzvVK2MY5wA" 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="_cwoQjJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQjppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwoQiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQkZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwoQiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQlJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwoQiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQl5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwoQiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQmppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwoQiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQnZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwoQiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQoJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwoQS5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoQoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoQo5pAEeOXzvVK2MY5wA" 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="_cwoQpZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwoQpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoQp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoQqJpAEeOXzvVK2MY5wA" 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="_cwoQqZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwoQq5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQrZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwoQrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoQr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoQsJpAEeOXzvVK2MY5wA" 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="_cwoQsZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwoQs5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwoQtZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwoQrZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwoQtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwoQt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwoQuJpAEeOXzvVK2MY5wA" 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="_cwo0wZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwoQrZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo0wppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo0w5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo0xJpAEeOXzvVK2MY5wA" 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="_cwo0xppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwoQiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo0x5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo0yZpAEeOXzvVK2MY5wA" name="CTIEProfile">
          <eAnnotations xmi:id="_cwo0yppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4GGZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwo0y5pAEeOXzvVK2MY5wA" 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="_cwo0zZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_bB9hoBSXEeOdysCqTthRng/182" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo0zppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwo005pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo0z5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo00JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo00ZpAEeOXzvVK2MY5wA" 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="_cwo005pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwo01JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo01ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo01ppAEeOXzvVK2MY5wA" 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="_cwo015pAEeOXzvVK2MY5wA" 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="_cwo02ZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwo02ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo025pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo03JpAEeOXzvVK2MY5wA" 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="_cwo03ZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwo065pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo035pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo04ZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo045pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwo08JpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo05ZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwo055pAEeOXzvVK2MY5wA" 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="_cwo06ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwo065pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwo07JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwo07ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwo07ppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwo075pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwo08JpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwo08ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwo08ppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwo085pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwo09JpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo09ZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwo09ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo095pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo0-JpAEeOXzvVK2MY5wA" 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="_cwo0-ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo0-5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwo09ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo0_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo0_ppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwo09ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo0_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1AZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwo1AppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1A5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1BJpAEeOXzvVK2MY5wA" 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="_cwo1BZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1B5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwo1AZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1CJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1CppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwo1AZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1C5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1DZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwo1AZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1DppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1EJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwo1EZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwo1EppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1E5pAEeOXzvVK2MY5wA" 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="_cwo1FJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1FppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwo1EJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1F5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1GZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwo1EJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1GppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1HJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwo1EJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1HZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1H5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwo1EJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1IJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1IppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwo1EJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1I5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1JZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwo1EJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1JppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1KJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwo005pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1KZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1KppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1K5pAEeOXzvVK2MY5wA" 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="_cwo1LZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwo1LppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1L5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1MJpAEeOXzvVK2MY5wA" 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="_cwo1MZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo1M5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1NZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwo1NppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1N5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1OJpAEeOXzvVK2MY5wA" 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="_cwo1OZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwo1O5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1PZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwo1NZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1PppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1P5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1QJpAEeOXzvVK2MY5wA" 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="_cwo1QppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwo1NZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1Q5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1RJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1RZpAEeOXzvVK2MY5wA" 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="_cwo1R5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwo1EJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1SJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwo1SppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_ntqlABPjEeOgy5f_ml0RHg/181" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1S5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwo1UJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1TJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1TZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1TppAEeOXzvVK2MY5wA" 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="_cwo1UJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwo1UZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1UppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1U5pAEeOXzvVK2MY5wA" 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="_cwo1VJpAEeOXzvVK2MY5wA" 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="_cwo1VppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwo1V5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1WJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1WZpAEeOXzvVK2MY5wA" 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="_cwo1WppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwo1aJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo1XJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo1XppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo1YJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwo1bZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo1YppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwo1ZJpAEeOXzvVK2MY5wA" 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="_cwo1ZppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwo1aJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwo1aZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwo1appAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwo1a5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwo1bJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwo1bZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwo1bppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwo1b5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwo1cJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwo1cZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1cppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwo1c5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1dJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1dZpAEeOXzvVK2MY5wA" 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="_cwo1dppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1eJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwo1cppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1eZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1e5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwo1cppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1fJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1fppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwo1f5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1gJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1gZpAEeOXzvVK2MY5wA" 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="_cwo1gppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1hJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwo1fppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1hZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1h5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwo1fppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1iJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1ippAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwo1fppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1i5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1jZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwo1jppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwo1j5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1kJpAEeOXzvVK2MY5wA" 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="_cwo1kZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1k5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwo1jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1lJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1lppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwo1jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1l5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1mZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwo1jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1mppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1nJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwo1jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1nZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1n5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwo1jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1oJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1oppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwo1jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1o5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1pZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwo1UJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1pppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1p5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1qJpAEeOXzvVK2MY5wA" 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="_cwo1qppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwo1q5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1rJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1rZpAEeOXzvVK2MY5wA" 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="_cwo1rppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo1sJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1sppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwo1s5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1tJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1tZpAEeOXzvVK2MY5wA" 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="_cwo1tppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwo1uJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1uppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwo1sppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1u5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1vJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1vZpAEeOXzvVK2MY5wA" 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="_cwo1v5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwo1sppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1wJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1wZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1wppAEeOXzvVK2MY5wA" 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="_cwo1xJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwo1jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1xZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwo1x5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_4f3zYBPiEeOgy5f_ml0RHg/180" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1yJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwo1zZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1yZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1yppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1y5pAEeOXzvVK2MY5wA" 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="_cwo1zZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwo1zppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1z5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo10JpAEeOXzvVK2MY5wA" 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="_cwo10ZpAEeOXzvVK2MY5wA" 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="_cwo105pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwo11JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo11ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo11ppAEeOXzvVK2MY5wA" 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="_cwo115pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwo15ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo12ZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo125pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo13ZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwo16ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo135pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwo14ZpAEeOXzvVK2MY5wA" 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="_cwo145pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwo15ZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwo15ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwo155pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwo16JpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwo16ZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwo16ppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwo165pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwo17JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwo17ZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwo17ppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo175pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwo18JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo18ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo18ppAEeOXzvVK2MY5wA" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwo185pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo19ZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwo175pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo19ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1-JpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwo175pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo1-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo1-5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwo1_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo1_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo1_ppAEeOXzvVK2MY5wA" 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="_cwo1_5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2AZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwo1-5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2AppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2BJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwo1-5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2BZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2B5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwo1-5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2CJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2CppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwo2C5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwo2DJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2DZpAEeOXzvVK2MY5wA" 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="_cwo2DppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2EJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwo2CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2EZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2E5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwo2CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2FJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2FppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwo2CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2F5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2GZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwo2CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2GppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2HJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwo2CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2HZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2H5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwo2CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2IJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2IppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwo1zZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2I5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo2JJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2JZpAEeOXzvVK2MY5wA" 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="_cwo2J5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwo2KJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo2KZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2KppAEeOXzvVK2MY5wA" 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="_cwo2K5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo2LZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2L5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwo2MJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo2MZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2MppAEeOXzvVK2MY5wA" 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="_cwo2M5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwo2NZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2N5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwo2L5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2OJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo2OZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2OppAEeOXzvVK2MY5wA" 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="_cwo2PJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwo2L5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2PZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo2PppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2P5pAEeOXzvVK2MY5wA" 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="_cwo2QZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwo2CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2QppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwo2RJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_C8YD8BPiEeOgy5f_ml0RHg/179" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2RZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwo2SppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2RppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo2R5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2SJpAEeOXzvVK2MY5wA" 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="_cwo2SppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwo2S5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo2TJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2TZpAEeOXzvVK2MY5wA" 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="_cwo2TppAEeOXzvVK2MY5wA" 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="_cwo2UJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwo2UZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo2UppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2U5pAEeOXzvVK2MY5wA" 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="_cwo2VJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwo2YppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo2VppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo2WJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo2WppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwo2Z5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo2XJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwo2XppAEeOXzvVK2MY5wA" 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="_cwo2YJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwo2YppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwo2Y5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwo2ZJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwo2ZZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwo2ZppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwo2Z5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwo2aJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwo2aZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwo2appAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwo2a5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2bJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwo2bZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo2bppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2b5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwo2cJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2cppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwo2bJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2c5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2dZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwo2bJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2dppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2eJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwo2eZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo2eppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2e5pAEeOXzvVK2MY5wA" 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="_cwo2fJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2fppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwo2eJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2f5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2gZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwo2eJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2gppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2hJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwo2eJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2hZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2h5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwo2iJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwo2iZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2ippAEeOXzvVK2MY5wA" 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="_cwo2i5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2jZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwo2h5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2jppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2kJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwo2h5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2kZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2k5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwo2h5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2lJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2lppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwo2h5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2l5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2mZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwo2h5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2mppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2nJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwo2h5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2nZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2n5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwo2SppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2oJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo2oZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2oppAEeOXzvVK2MY5wA" 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="_cwo2pJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwo2pZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo2pppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2p5pAEeOXzvVK2MY5wA" 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="_cwo2qJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo2qppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2rJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwo2rZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo2rppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2r5pAEeOXzvVK2MY5wA" 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="_cwo2sJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwo2sppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2tJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwo2rJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2tZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo2tppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2t5pAEeOXzvVK2MY5wA" 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="_cwo2uZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwo2rJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2uppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo2u5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2vJpAEeOXzvVK2MY5wA" 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="_cwo2vppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwo2h5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2v5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwo2wZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_c6tqsBPhEeOy6eRlOY0JBA/178" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2wppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwo2x5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2w5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo2xJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2xZpAEeOXzvVK2MY5wA" 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="_cwo2x5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwo2yJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo2yZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2yppAEeOXzvVK2MY5wA" 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="_cwo2y5pAEeOXzvVK2MY5wA" 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="_cwo2zZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwo2zppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo2z5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo20JpAEeOXzvVK2MY5wA" 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="_cwo20ZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwo235pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo205pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo21ZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo215pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwo25JpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo22ZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwo225pAEeOXzvVK2MY5wA" 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="_cwo23ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwo235pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwo24JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwo24ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwo24ppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwo245pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwo25JpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwo25ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwo25ppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwo255pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwo26JpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo26ZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwo26ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo265pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo27JpAEeOXzvVK2MY5wA" key="documentation" value="not self.base_ObjectNode.getAppliedStereotype('CTIEActivityDiagramProfile::in').oclIsUndefined() &#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwo27ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo275pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwo26ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo28JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo28ppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwo26ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo285pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo29ZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwo29ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo295pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo2-JpAEeOXzvVK2MY5wA" 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="_cwo2-ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2-5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwo29ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo2_ppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwo29ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo2_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3AZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwo29ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3AppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3BJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwo3BZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwo3BppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3B5pAEeOXzvVK2MY5wA" 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="_cwo3CJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3CppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwo3BJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3C5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3DZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwo3BJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3DppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3EJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwo3BJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3EZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3E5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwo3BJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3FJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3FppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwo3BJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3F5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3GZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwo3BJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3GppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3HJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwo2x5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3HZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo3HppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3H5pAEeOXzvVK2MY5wA" 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="_cwo3IZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwo3IppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo3I5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3JJpAEeOXzvVK2MY5wA" 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="_cwo3JZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo3J5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3KZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwo3KppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo3K5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3LJpAEeOXzvVK2MY5wA" 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="_cwo3LZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwo3L5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3MZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwo3KZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3MppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo3M5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3NJpAEeOXzvVK2MY5wA" 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="_cwo3NppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwo3KZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3N5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo3OJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3OZpAEeOXzvVK2MY5wA" 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="_cwo3O5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwo3BJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3PJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwo3PppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_RGX58BPhEeOy6eRlOY0JBA/177" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3P5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwo3RJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3QJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo3QZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3QppAEeOXzvVK2MY5wA" 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="_cwo3RJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwo3RZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo3RppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3R5pAEeOXzvVK2MY5wA" 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="_cwo3SJpAEeOXzvVK2MY5wA" 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="_cwo3SppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwo3S5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo3TJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3TZpAEeOXzvVK2MY5wA" 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="_cwo3TppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwo3XJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo3UJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo3UppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo3VJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwo3YZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo3VppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwo3WJpAEeOXzvVK2MY5wA" 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="_cwo3WppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwo3XJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwo3XZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwo3XppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwo3X5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwo3YJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwo3YZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwo3YppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwo3Y5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwo3ZJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwo3ZZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3ZppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwo3Z5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo3aJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3aZpAEeOXzvVK2MY5wA" 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="_cwo3appAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3bJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwo3ZppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3bZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3b5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwo3ZppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3cJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3cppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwo3c5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo3dJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3dZpAEeOXzvVK2MY5wA" 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="_cwo3dppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3eJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwo3cppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3eZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3e5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwo3cppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3fJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3fppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwo3cppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3f5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3gZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwo3gppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwo3g5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3hJpAEeOXzvVK2MY5wA" 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="_cwo3hZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3h5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwo3gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3iJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3ippAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwo3gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3i5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3jZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwo3gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3jppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3kJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwo3gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3kZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3k5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwo3gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3lJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3lppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwo3gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3l5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3mZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwo3RJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3mppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo3m5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3nJpAEeOXzvVK2MY5wA" 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="_cwo3nppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwo3n5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo3oJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3oZpAEeOXzvVK2MY5wA" 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="_cwo3oppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo3pJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3pppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwo3p5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo3qJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3qZpAEeOXzvVK2MY5wA" 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="_cwo3qppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwo3rJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3rppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwo3pppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3r5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo3sJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3sZpAEeOXzvVK2MY5wA" 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="_cwo3s5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwo3pppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3tJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo3tZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3tppAEeOXzvVK2MY5wA" 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="_cwo3uJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwo3gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3uZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwo3u5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_8Yn4gBPgEeOy6eRlOY0JBA/176" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo3vJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwo3wZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo3vZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo3vppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3v5pAEeOXzvVK2MY5wA" 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="_cwo3wZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwo3wppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo3w5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3xJpAEeOXzvVK2MY5wA" 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="_cwo3xZpAEeOXzvVK2MY5wA" 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="_cwo3x5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwo3yJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwo3yZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwo3yppAEeOXzvVK2MY5wA" 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="_cwo3y5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwo32ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo3zZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo3z5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo30ZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwo33ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwo305pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwo31ZpAEeOXzvVK2MY5wA" 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="_cwo315pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwo32ZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwo32ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwo325pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwo33JpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwo33ZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwo33ppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwo335pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwo34JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwo34ZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwo34ppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo345pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwo35JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwo35ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo355pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwo345pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo36JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwo36ppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwo345pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwo365pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpb0JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwpb0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpb0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpb05pAEeOXzvVK2MY5wA" 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="_cwpb1JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpb1ppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwpb0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpb15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpb2ZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwpb0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpb2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpb3JpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwpb0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpb3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpb35pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwpb4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwpb4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpb4ppAEeOXzvVK2MY5wA" 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="_cwpb45pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpb5ZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwpb35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpb5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpb6JpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwpb35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpb6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpb65pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwpb35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpb7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpb7ppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwpb35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpb75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpb8ZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwpb35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpb8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpb9JpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwpb35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpb9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpb95pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwo3wZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpb-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpb-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpb-ppAEeOXzvVK2MY5wA" 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="_cwpb_JpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwpb_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpb_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpb_5pAEeOXzvVK2MY5wA" 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="_cwpcAJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpcAppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcBJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwpcBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpcBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpcB5pAEeOXzvVK2MY5wA" 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="_cwpcCJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwpcCppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcDJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwpcBJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpcDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpcD5pAEeOXzvVK2MY5wA" 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="_cwpcEZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwpcBJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpcE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpcFJpAEeOXzvVK2MY5wA" 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="_cwpcFppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwpb35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwpcGZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_rXNl8BPgEeOy6eRlOY0JBA/175" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcGppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwpcH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpcHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpcHZpAEeOXzvVK2MY5wA" 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="_cwpcH5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwpcIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpcIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpcIppAEeOXzvVK2MY5wA" 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="_cwpcI5pAEeOXzvVK2MY5wA" 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="_cwpcJZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwpcJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpcJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpcKJpAEeOXzvVK2MY5wA" 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="_cwpcKZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwpcN5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpcK5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpcLZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpcL5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwpcPJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpcMZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwpcM5pAEeOXzvVK2MY5wA" 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="_cwpcNZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwpcN5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwpcOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwpcOZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwpcOppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwpcO5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwpcPJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwpcPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwpcPppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwpcP5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwpcQJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcQZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwpcQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpcQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpcRJpAEeOXzvVK2MY5wA" 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="_cwpcRZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcR5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwpcQZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcSppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwpcQZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcTZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwpcTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpcT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpcUJpAEeOXzvVK2MY5wA" 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="_cwpcUZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcU5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwpcTZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcVppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwpcTZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcWZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwpcTZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcXJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwpcXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwpcXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpcX5pAEeOXzvVK2MY5wA" 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="_cwpcYJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcYppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwpcXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcZZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwpcXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcaJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwpcXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpca5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwpcXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcbppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwpcXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpccZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwpcXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpccppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcdJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwpcH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpcdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpcd5pAEeOXzvVK2MY5wA" 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="_cwpceZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwpceppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpce5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpcfJpAEeOXzvVK2MY5wA" 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="_cwpcfZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpcf5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcgZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwpcgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpcg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpchJpAEeOXzvVK2MY5wA" 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="_cwpchZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwpch5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpciZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwpcgZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpci5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpcjJpAEeOXzvVK2MY5wA" 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="_cwpcjppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwpcgZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpckJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpckZpAEeOXzvVK2MY5wA" 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="_cwpck5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwpcXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpclJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwpclppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_SRNK0BPgEeOy6eRlOY0JBA/174" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcl5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwpcnJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpcmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpcmppAEeOXzvVK2MY5wA" 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="_cwpcnJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwpcnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpcnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpcn5pAEeOXzvVK2MY5wA" 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="_cwpcoJpAEeOXzvVK2MY5wA" 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="_cwpcoppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwpco5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpcpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpcpZpAEeOXzvVK2MY5wA" 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="_cwpcpppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwpctJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpcqJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpcqppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpcrJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwpcuZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpcrppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwpcsJpAEeOXzvVK2MY5wA" 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="_cwpcsppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwpctJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwpctZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwpctppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwpct5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwpcuJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwpcuZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwpcuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwpcu5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwpcvJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwpcvZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcvppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwpcv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpcwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpcwZpAEeOXzvVK2MY5wA" 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="_cwpcwppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcxJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwpcvppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcx5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwpcvppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpcyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpcyppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwpcy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpczJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpczZpAEeOXzvVK2MY5wA" 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="_cwpczppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpc0JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwpcyppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpc0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpc05pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwpcyppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpc1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpc1ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwpcyppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpc15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpc2ZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwpc2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwpc25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpc3JpAEeOXzvVK2MY5wA" 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="_cwpc3ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpc35pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwpc2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpc4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpc4ppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwpc2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpc45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpc5ZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwpc2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpc5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpc6JpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwpc2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpc6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpc65pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwpc2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpc7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpc7ppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwpc2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpc75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpc8ZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwpcnJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpc8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpc85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpc9JpAEeOXzvVK2MY5wA" 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="_cwpc9ppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwpc95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpc-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpc-ZpAEeOXzvVK2MY5wA" 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="_cwpc-ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpc_JpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpc_ppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwpc_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpdAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpdAZpAEeOXzvVK2MY5wA" 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="_cwpdAppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwpdBJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdBppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwpc_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpdCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpdCZpAEeOXzvVK2MY5wA" 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="_cwpdC5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwpc_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpdDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpdDppAEeOXzvVK2MY5wA" 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="_cwpdEJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwpc2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwpdE5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_YC0ZkBPfEeOy6eRlOY0JBA/173" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdFJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwpdGZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpdFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpdF5pAEeOXzvVK2MY5wA" 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="_cwpdGZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwpdGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpdG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpdHJpAEeOXzvVK2MY5wA" 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="_cwpdHZpAEeOXzvVK2MY5wA" 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="_cwpdH5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwpdIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpdIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpdIppAEeOXzvVK2MY5wA" 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="_cwpdI5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwpdMZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpdJZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpdJ5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpdKZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwpdNppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpdK5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwpdLZpAEeOXzvVK2MY5wA" 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="_cwpdL5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwpdMZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwpdMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwpdM5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwpdNJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwpdNZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwpdNppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwpdN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwpdOJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwpdOZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwpdOppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdO5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwpdPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpdPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpdPppAEeOXzvVK2MY5wA" 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="_cwpdP5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdQZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwpdO5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdRJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwpdO5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdR5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwpdSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpdSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpdSppAEeOXzvVK2MY5wA" 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="_cwpdS5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdTZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwpdR5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdUJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwpdR5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdU5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwpdR5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdVppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwpdV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwpdWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpdWZpAEeOXzvVK2MY5wA" 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="_cwpdWppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdXJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwpdVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdX5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwpdVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdYppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwpdVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdZZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwpdVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdaJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwpdVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpda5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwpdVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdbppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwpdGZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpdcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpdcZpAEeOXzvVK2MY5wA" 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="_cwpdc5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwpddJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpddZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpddppAEeOXzvVK2MY5wA" 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="_cwpdd5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpdeZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpde5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwpdfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpdfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpdfppAEeOXzvVK2MY5wA" 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="_cwpdf5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwpdgZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdg5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwpde5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpdhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpdhppAEeOXzvVK2MY5wA" 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="_cwpdiJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwpde5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpdippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpdi5pAEeOXzvVK2MY5wA" 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="_cwpdjZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwpdVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwpdkJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/__cPscBPeEeOy6eRlOY0JBA/172" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdkZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwpdlppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpdk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpdlJpAEeOXzvVK2MY5wA" 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="_cwpdlppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwpdl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpdmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpdmZpAEeOXzvVK2MY5wA" 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="_cwpdmppAEeOXzvVK2MY5wA" 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="_cwpdnJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwpdnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpdnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpdn5pAEeOXzvVK2MY5wA" 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="_cwpdoJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwpdrppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpdoppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpdpJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpdpppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwpds5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpdqJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwpdqppAEeOXzvVK2MY5wA" 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="_cwpdrJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwpdrppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwpdr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwpdsJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwpdsZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwpdsppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwpds5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwpdtJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwpdtZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwpdtppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwpdt5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpduJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwpduZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpduppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpdu5pAEeOXzvVK2MY5wA" 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="_cwpdvJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdvppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwpduJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdwZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwpduJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdxJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwpdxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpdxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpdx5pAEeOXzvVK2MY5wA" 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="_cwpdyJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdyppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwpdxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpdzZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwpdxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpdzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpd0JpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwpdxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpd0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpd05pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwpd1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwpd1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpd1ppAEeOXzvVK2MY5wA" 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="_cwpd15pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpd2ZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwpd05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpd2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpd3JpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwpd05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpd3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpd35pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwpd05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpd4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpd4ppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwpd05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpd45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpd5ZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwpd05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpd5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpd6JpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwpd05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpd6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpd65pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwpdlppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpd7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpd7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpd7ppAEeOXzvVK2MY5wA" 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="_cwpd8JpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwpd8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpd8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpd85pAEeOXzvVK2MY5wA" 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="_cwpd9JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpd9ppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpd-JpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwpd-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpd-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpd-5pAEeOXzvVK2MY5wA" 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="_cwpd_JpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwpd_ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeAJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwpd-JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpeAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpeA5pAEeOXzvVK2MY5wA" 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="_cwpeBZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwpd-JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpeB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpeCJpAEeOXzvVK2MY5wA" 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="_cwpeCppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwpd05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwpeDZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_zYyhoBPeEeOy6eRlOY0JBA/171" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeDppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwpeE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpeEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpeEZpAEeOXzvVK2MY5wA" 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="_cwpeE5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwpeFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpeFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpeFppAEeOXzvVK2MY5wA" 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="_cwpeF5pAEeOXzvVK2MY5wA" 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="_cwpeGZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwpeGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpeG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpeHJpAEeOXzvVK2MY5wA" 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="_cwpeHZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwpeK5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpeH5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpeIZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpeI5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwpeMJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpeJZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwpeJ5pAEeOXzvVK2MY5wA" 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="_cwpeKZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwpeK5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwpeLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwpeLZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwpeLppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwpeL5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwpeMJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwpeMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwpeMppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwpeM5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwpeNJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeNZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwpeNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpeN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpeOJpAEeOXzvVK2MY5wA" 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="_cwpeOZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeO5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwpeNZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpePJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpePppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwpeNZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeQZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwpeQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpeQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpeRJpAEeOXzvVK2MY5wA" 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="_cwpeRZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeR5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwpeQZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeSppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwpeQZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeTZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwpeQZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeUJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwpeUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwpeUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpeU5pAEeOXzvVK2MY5wA" 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="_cwpeVJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeVppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwpeUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeWZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwpeUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeXJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwpeUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeX5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwpeUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeYppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwpeUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeZZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwpeUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeaJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwpeE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpeappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpea5pAEeOXzvVK2MY5wA" 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="_cwpebZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwpebppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpeb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpecJpAEeOXzvVK2MY5wA" 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="_cwpecZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpec5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpedZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwpedppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwped5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpeeJpAEeOXzvVK2MY5wA" 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="_cwpeeZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwpee5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpefZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwpedZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpefppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpef5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpegJpAEeOXzvVK2MY5wA" 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="_cwpegppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwpedZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpehJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpehZpAEeOXzvVK2MY5wA" 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="_cwpeh5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwpeUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwpeippAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_ih3n0BPeEeOy6eRlOY0JBA/170" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpei5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwpekJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpejJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpejZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpejppAEeOXzvVK2MY5wA" 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="_cwpekJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwpekZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpekppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpek5pAEeOXzvVK2MY5wA" 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="_cwpelJpAEeOXzvVK2MY5wA" 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="_cwpelppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwpel5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpemJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpemZpAEeOXzvVK2MY5wA" 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="_cwpemppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwpeqJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpenJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpenppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpeoJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwperZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpeoppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwpepJpAEeOXzvVK2MY5wA" 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="_cwpepppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwpeqJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwpeqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwpeqppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwpeq5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwperJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwperZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwperppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwper5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwpesJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwpesZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpesppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwpes5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpetJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpetZpAEeOXzvVK2MY5wA" 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="_cwpetppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeuJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwpesppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeu5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwpesppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpevJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpevppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwpev5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpewJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpewZpAEeOXzvVK2MY5wA" 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="_cwpewppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpexJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwpevppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpexZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpex5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwpevppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpeyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpeyppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwpevppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpey5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpezZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwpezppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwpez5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpe0JpAEeOXzvVK2MY5wA" 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="_cwpe0ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpe05pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwpezZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpe1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpe1ppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwpezZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpe15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpe2ZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwpezZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpe2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpe3JpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwpezZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpe3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpe35pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwpezZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpe4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpe4ppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwpezZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpe45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpe5ZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwpekJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpe5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpe55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpe6JpAEeOXzvVK2MY5wA" 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="_cwpe6ppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwpe65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpe7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpe7ZpAEeOXzvVK2MY5wA" 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="_cwpe7ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwpe8JpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpe8ppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwpe85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpe9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpe9ZpAEeOXzvVK2MY5wA" 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="_cwpe9ppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwpe-JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpe-ppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwpe8ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpe-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpe_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpe_ZpAEeOXzvVK2MY5wA" 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="_cwpe_5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwpe8ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpfAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpfAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpfAppAEeOXzvVK2MY5wA" 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="_cwpfBJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwpezZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpfBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwpfB5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_SGTNQBPeEeOy6eRlOY0JBA/169" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwpfCJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwpfDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwpfCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpfCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpfC5pAEeOXzvVK2MY5wA" 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="_cwpfDZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwpfDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpfD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpfEJpAEeOXzvVK2MY5wA" 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="_cwpfEZpAEeOXzvVK2MY5wA" 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="_cwpfE5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwpfFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwpfFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwpfFppAEeOXzvVK2MY5wA" 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="_cwpfF5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwqC7JpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqC4JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqC4ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqC5JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwqC8ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqC5ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqC6JpAEeOXzvVK2MY5wA" 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="_cwqC6ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqC7JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwqC7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqC7ppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqC75pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwqC8JpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqC8ZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwqC8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqC85pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqC9JpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwqC9ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqC9ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwqC95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqC-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqC-ZpAEeOXzvVK2MY5wA" 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="_cwqC-ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqC_JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwqC9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqC_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqC_5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwqC9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDAppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwqDA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqDBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDBZpAEeOXzvVK2MY5wA" 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="_cwqDBppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDCJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwqDAppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDC5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwqDAppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDDppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwqDAppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDEZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwqDEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwqDE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDFJpAEeOXzvVK2MY5wA" 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="_cwqDFZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDF5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwqDEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDGppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwqDEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDHZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwqDEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDIJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwqDEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDI5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwqDEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDJppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwqDEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDKZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwpfDZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqDK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDLJpAEeOXzvVK2MY5wA" 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="_cwqDLppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwqDL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqDMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDMZpAEeOXzvVK2MY5wA" 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="_cwqDMppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqDNJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDNppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwqDN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqDOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDOZpAEeOXzvVK2MY5wA" 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="_cwqDOppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqDPJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDPppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwqDNppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqDQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDQZpAEeOXzvVK2MY5wA" 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="_cwqDQ5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwqDNppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqDRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDRppAEeOXzvVK2MY5wA" 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="_cwqDSJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwqDEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwqDS5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_Axh50BPeEeOy6eRlOY0JBA/168" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDTJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwqDUZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqDTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDT5pAEeOXzvVK2MY5wA" 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="_cwqDUZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwqDUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqDU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDVJpAEeOXzvVK2MY5wA" 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="_cwqDVZpAEeOXzvVK2MY5wA" 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="_cwqDV5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwqDWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqDWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDWppAEeOXzvVK2MY5wA" 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="_cwqDW5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwqDaZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqDXZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqDX5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqDYZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwqDbppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqDY5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqDZZpAEeOXzvVK2MY5wA" 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="_cwqDZ5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqDaZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwqDappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqDa5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqDbJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwqDbZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqDbppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwqDb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqDcJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqDcZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwqDcppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDc5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwqDdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqDdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDdppAEeOXzvVK2MY5wA" 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="_cwqDd5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDeZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwqDc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDfJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwqDc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDf5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwqDgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqDgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDgppAEeOXzvVK2MY5wA" 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="_cwqDg5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDhZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwqDf5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDiJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwqDf5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDi5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwqDf5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDjppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwqDj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwqDkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDkZpAEeOXzvVK2MY5wA" 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="_cwqDkppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDlJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwqDjppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDl5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwqDjppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDmppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwqDjppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDnZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwqDjppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDoJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwqDjppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDo5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwqDjppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDpppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwqDUZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqDqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDqZpAEeOXzvVK2MY5wA" 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="_cwqDq5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwqDrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqDrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDrppAEeOXzvVK2MY5wA" 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="_cwqDr5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqDsZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDs5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwqDtJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqDtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDtppAEeOXzvVK2MY5wA" 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="_cwqDt5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqDuZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDu5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwqDs5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqDvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDvppAEeOXzvVK2MY5wA" 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="_cwqDwJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwqDs5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqDwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDw5pAEeOXzvVK2MY5wA" 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="_cwqDxZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwqDjppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwqDyJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_onOR8BPdEeOy6eRlOY0JBA/167" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqDyZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwqDzppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqDyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqDy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqDzJpAEeOXzvVK2MY5wA" 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="_cwqDzppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwqDz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqD0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqD0ZpAEeOXzvVK2MY5wA" 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="_cwqD0ppAEeOXzvVK2MY5wA" 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="_cwqD1JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwqD1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqD1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqD15pAEeOXzvVK2MY5wA" 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="_cwqD2JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwqD5ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqD2ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqD3JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqD3ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwqD65pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqD4JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqD4ppAEeOXzvVK2MY5wA" 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="_cwqD5JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqD5ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwqD55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqD6JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqD6ZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwqD6ppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqD65pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwqD7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqD7ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqD7ppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwqD75pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqD8JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwqD8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqD8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqD85pAEeOXzvVK2MY5wA" 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="_cwqD9JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqD9ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwqD8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqD95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqD-ZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwqD8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqD-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqD_JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwqD_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqD_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqD_5pAEeOXzvVK2MY5wA" 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="_cwqEAJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEAppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwqD_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEBZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwqD_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqECJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwqD_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqECZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEC5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwqEDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwqEDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqEDppAEeOXzvVK2MY5wA" 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="_cwqED5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEEZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwqEC5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEFJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwqEC5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEF5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwqEC5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEGppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwqEC5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEHZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwqEC5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEIJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwqEC5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEI5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwqDzppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqEJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqEJppAEeOXzvVK2MY5wA" 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="_cwqEKJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwqEKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqEKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqEK5pAEeOXzvVK2MY5wA" 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="_cwqELJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqELppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEMJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwqEMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqEMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqEM5pAEeOXzvVK2MY5wA" 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="_cwqENJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqENppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEOJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwqEMJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqEOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqEO5pAEeOXzvVK2MY5wA" 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="_cwqEPZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwqEMJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqEP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqEQJpAEeOXzvVK2MY5wA" 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="_cwqEQppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwqEC5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwqERZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_joeK4BPbEeOy6eRlOY0JBA/166" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqERppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwqES5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqER5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqESJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqESZpAEeOXzvVK2MY5wA" 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="_cwqES5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwqETJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqETZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqETppAEeOXzvVK2MY5wA" 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="_cwqET5pAEeOXzvVK2MY5wA" 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="_cwqEUZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwqEUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqEU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqEVJpAEeOXzvVK2MY5wA" 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="_cwqEVZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwqEY5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqEV5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqEWZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqEW5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwqEaJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqEXZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqEX5pAEeOXzvVK2MY5wA" 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="_cwqEYZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqEY5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwqEZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqEZZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqEZppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwqEZ5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqEaJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwqEaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqEappAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqEa5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwqEbJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEbZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwqEbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqEb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqEcJpAEeOXzvVK2MY5wA" 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="_cwqEcZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEc5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwqEbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEdppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwqEbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEeZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwqEeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqEe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqEfJpAEeOXzvVK2MY5wA" 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="_cwqEfZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEf5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwqEeZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEgppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwqEeZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEhZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwqEeZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEiJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwqEiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwqEippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqEi5pAEeOXzvVK2MY5wA" 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="_cwqEjJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEjppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwqEiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEkZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwqEiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqElJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwqEiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqElZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEl5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwqEiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEmppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwqEiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEnZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwqEiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEoJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwqES5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqEoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqEo5pAEeOXzvVK2MY5wA" 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="_cwqEpZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwqEpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqEp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqEqJpAEeOXzvVK2MY5wA" 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="_cwqEqZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqEq5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqErZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwqErppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqEr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqEsJpAEeOXzvVK2MY5wA" 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="_cwqEsZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqEs5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEtZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwqErZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqEt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqEuJpAEeOXzvVK2MY5wA" 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="_cwqEuppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwqErZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqEvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqEvZpAEeOXzvVK2MY5wA" 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="_cwqEv5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwqEiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqEwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwqEwppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_csfQMBPbEeOy6eRlOY0JBA/165" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqEw5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwqEyJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqExJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqExZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqExppAEeOXzvVK2MY5wA" 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="_cwqEyJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwqEyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqEyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqEy5pAEeOXzvVK2MY5wA" 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="_cwqEzJpAEeOXzvVK2MY5wA" 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="_cwqEzppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwqEz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqE0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqE0ZpAEeOXzvVK2MY5wA" 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="_cwqE0ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwqE4JpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqE1JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqE1ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqE2JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwqE5ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqE2ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqE3JpAEeOXzvVK2MY5wA" 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="_cwqE3ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqE4JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwqE4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqE4ppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqE45pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwqE5JpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqE5ZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwqE5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqE55pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqE6JpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwqE6ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqE6ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwqE65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqE7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqE7ZpAEeOXzvVK2MY5wA" 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="_cwqE7ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqE8JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwqE6ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqE8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqE85pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwqE6ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqE9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqE9ppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwqE95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqE-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqE-ZpAEeOXzvVK2MY5wA" 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="_cwqE-ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqE_JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwqE9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqE_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqE_5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwqE9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFAppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwqE9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFBZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwqFBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwqFB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFCJpAEeOXzvVK2MY5wA" 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="_cwqFCZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFC5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwqFBZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFDppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwqFBZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFEZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwqFBZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFFJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwqFBZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFF5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwqFBZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFGppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwqFBZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFHZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwqEyJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqFH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFIJpAEeOXzvVK2MY5wA" 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="_cwqFIppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwqFI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqFJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFJZpAEeOXzvVK2MY5wA" 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="_cwqFJppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqFKJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFKppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwqFK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqFLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFLZpAEeOXzvVK2MY5wA" 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="_cwqFLppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqFMJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFMppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwqFKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqFNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFNZpAEeOXzvVK2MY5wA" 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="_cwqFN5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwqFKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqFOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFOppAEeOXzvVK2MY5wA" 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="_cwqFPJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwqFBZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwqFP5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_CwSM4BPbEeOy6eRlOY0JBA/164" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFQJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwqFRZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqFQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFQ5pAEeOXzvVK2MY5wA" 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="_cwqFRZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwqFRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqFR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFSJpAEeOXzvVK2MY5wA" 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="_cwqFSZpAEeOXzvVK2MY5wA" 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="_cwqFS5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwqFTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqFTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFTppAEeOXzvVK2MY5wA" 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="_cwqFT5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwqFXZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqFUZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqFU5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqFVZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwqFYppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqFV5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqFWZpAEeOXzvVK2MY5wA" 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="_cwqFW5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqFXZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwqFXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqFX5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqFYJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwqFYZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqFYppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwqFY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqFZJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqFZZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwqFZppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFZ5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwqFaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqFaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFappAEeOXzvVK2MY5wA" 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="_cwqFa5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFbZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwqFZ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFcJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwqFZ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFc5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwqFdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqFdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFdppAEeOXzvVK2MY5wA" 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="_cwqFd5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFeZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwqFc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFfJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwqFc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFf5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwqFc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFgppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwqFg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwqFhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFhZpAEeOXzvVK2MY5wA" 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="_cwqFhppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFiJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwqFgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFi5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwqFgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFjppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwqFgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFkZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwqFgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFlJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwqFgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFl5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwqFgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFmppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwqFRZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqFnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFnZpAEeOXzvVK2MY5wA" 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="_cwqFn5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwqFoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqFoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFoppAEeOXzvVK2MY5wA" 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="_cwqFo5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqFpZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFp5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwqFqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqFqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFqppAEeOXzvVK2MY5wA" 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="_cwqFq5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqFrZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFr5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwqFp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqFsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFsppAEeOXzvVK2MY5wA" 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="_cwqFtJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwqFp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqFtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFt5pAEeOXzvVK2MY5wA" 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="_cwqFuZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwqFgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwqFvJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_9umtoBPYEeOy6eRlOY0JBA/163" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqFvZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwqFwppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqFvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqFv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFwJpAEeOXzvVK2MY5wA" 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="_cwqFwppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwqFw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqFxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFxZpAEeOXzvVK2MY5wA" 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="_cwqFxppAEeOXzvVK2MY5wA" 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="_cwqFyJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwqFyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqFyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqFy5pAEeOXzvVK2MY5wA" 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="_cwqFzJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwqF2ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqFzppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqF0JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqF0ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwqF35pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqF1JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqF1ppAEeOXzvVK2MY5wA" 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="_cwqF2JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqF2ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwqF25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqF3JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqF3ZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwqF3ppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqF35pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwqF4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqF4ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqF4ppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwqF45pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqF5JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwqF5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqF5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqF55pAEeOXzvVK2MY5wA" 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="_cwqF6JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqF6ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwqF5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqF65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqF7ZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwqF5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqF7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqF8JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwqF8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqF8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqF85pAEeOXzvVK2MY5wA" 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="_cwqF9JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqF9ppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwqF8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqF95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqF-ZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwqF8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqF-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqF_JpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwqF8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqF_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqF_5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwqGAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwqGAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqGAppAEeOXzvVK2MY5wA" 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="_cwqGA5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqGBZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwqF_5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqGBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqGCJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwqF_5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqGCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqp8ZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwqF_5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqp8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqp9JpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwqF_5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqp9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqp95pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwqF_5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqp-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqp-ppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwqF_5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqp-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqp_ZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwqFwppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqp_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqp_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqAJpAEeOXzvVK2MY5wA" 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="_cwqqAppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwqqA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqqBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqBZpAEeOXzvVK2MY5wA" 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="_cwqqBppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqqCJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqCppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwqqC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqqDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqDZpAEeOXzvVK2MY5wA" 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="_cwqqDppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqqEJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqEppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwqqCppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqqFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqFZpAEeOXzvVK2MY5wA" 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="_cwqqF5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwqqCppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqqGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqGppAEeOXzvVK2MY5wA" 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="_cwqqHJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwqF_5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwqqH5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_1VOA0BPYEeOy6eRlOY0JBA/162" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqIJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwqqJZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqqIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqI5pAEeOXzvVK2MY5wA" 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="_cwqqJZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwqqJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqqJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqKJpAEeOXzvVK2MY5wA" 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="_cwqqKZpAEeOXzvVK2MY5wA" 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="_cwqqK5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwqqLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqqLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqLppAEeOXzvVK2MY5wA" 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="_cwqqL5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwqqPZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqqMZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqqM5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqqNZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwqqQppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqqN5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqqOZpAEeOXzvVK2MY5wA" 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="_cwqqO5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqqPZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwqqPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqqP5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqqQJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwqqQZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqqQppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwqqQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqqRJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqqRZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwqqRppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqR5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwqqSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqqSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqSppAEeOXzvVK2MY5wA" 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="_cwqqS5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqTZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwqqR5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqUJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwqqR5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqU5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwqqVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqqVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqVppAEeOXzvVK2MY5wA" 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="_cwqqV5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqWZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwqqU5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqXJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwqqU5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqX5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwqqU5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqYppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwqqY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwqqZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqZZpAEeOXzvVK2MY5wA" 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="_cwqqZppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqaJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwqqYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqa5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwqqYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqbppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwqqYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqcZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwqqYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqdJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwqqYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqd5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwqqYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqeppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwqqJZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqqfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqfZpAEeOXzvVK2MY5wA" 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="_cwqqf5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwqqgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqqgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqgppAEeOXzvVK2MY5wA" 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="_cwqqg5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqqhZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqh5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwqqiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqqiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqippAEeOXzvVK2MY5wA" 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="_cwqqi5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqqjZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqj5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwqqh5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqqkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqkppAEeOXzvVK2MY5wA" 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="_cwqqlJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwqqh5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqqlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqql5pAEeOXzvVK2MY5wA" 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="_cwqqmZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwqqYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwqqnJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_oIzp4BPYEeOy6eRlOY0JBA/161" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqnZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwqqoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqqn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqoJpAEeOXzvVK2MY5wA" 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="_cwqqoppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwqqo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqqpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqpZpAEeOXzvVK2MY5wA" 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="_cwqqpppAEeOXzvVK2MY5wA" 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="_cwqqqJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwqqqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqqqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqq5pAEeOXzvVK2MY5wA" 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="_cwqqrJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwqquppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqqrppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqqsJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqqsppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwqqv5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqqtJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqqtppAEeOXzvVK2MY5wA" 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="_cwqquJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqquppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwqqu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqqvJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqqvZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwqqvppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqqv5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwqqwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqqwZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqqwppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwqqw5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqxJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwqqxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqqxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqqx5pAEeOXzvVK2MY5wA" 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="_cwqqyJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqyppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwqqxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqqzZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwqqxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqqzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqq0JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwqq0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqq0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqq05pAEeOXzvVK2MY5wA" 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="_cwqq1JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqq1ppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwqq0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqq15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqq2ZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwqq0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqq2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqq3JpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwqq0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqq3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqq35pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwqq4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwqq4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqq4ppAEeOXzvVK2MY5wA" 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="_cwqq45pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqq5ZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwqq35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqq5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqq6JpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwqq35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqq6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqq65pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwqq35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqq7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqq7ppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwqq35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqq75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqq8ZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwqq35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqq8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqq9JpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwqq35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqq9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqq95pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwqqoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqq-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqq-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqq-ppAEeOXzvVK2MY5wA" 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="_cwqq_JpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwqq_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqq_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqq_5pAEeOXzvVK2MY5wA" 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="_cwqrAJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqrAppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrBJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwqrBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqrBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrB5pAEeOXzvVK2MY5wA" 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="_cwqrCJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqrCppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrDJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwqrBJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqrDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrD5pAEeOXzvVK2MY5wA" 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="_cwqrEZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwqrBJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqrE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrFJpAEeOXzvVK2MY5wA" 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="_cwqrFppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwqq35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwqrGZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_OvzsMBPWEeOy6eRlOY0JBA/160" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrGppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwqrH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqrHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrHZpAEeOXzvVK2MY5wA" 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="_cwqrH5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwqrIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqrIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrIppAEeOXzvVK2MY5wA" 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="_cwqrI5pAEeOXzvVK2MY5wA" 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="_cwqrJZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwqrJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqrJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrKJpAEeOXzvVK2MY5wA" 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="_cwqrKZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwqrN5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqrK5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqrLZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqrL5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwqrPJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqrMZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqrM5pAEeOXzvVK2MY5wA" 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="_cwqrNZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqrN5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwqrOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqrOZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqrOppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwqrO5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqrPJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwqrPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqrPppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqrP5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwqrQJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrQZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwqrQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqrQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrRJpAEeOXzvVK2MY5wA" 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="_cwqrRZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrR5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwqrQZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrSppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwqrQZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrTZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwqrTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqrT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrUJpAEeOXzvVK2MY5wA" 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="_cwqrUZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrU5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwqrTZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrVppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwqrTZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrWZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwqrTZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrXJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwqrXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwqrXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrX5pAEeOXzvVK2MY5wA" 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="_cwqrYJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrYppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwqrXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrZZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwqrXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqraJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwqrXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqraZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqra5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwqrXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrbppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwqrXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrcZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwqrXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrdJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwqrH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqrdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrd5pAEeOXzvVK2MY5wA" 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="_cwqreZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwqreppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqre5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrfJpAEeOXzvVK2MY5wA" 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="_cwqrfZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqrf5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrgZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwqrgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqrg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrhJpAEeOXzvVK2MY5wA" 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="_cwqrhZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqrh5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqriZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwqrgZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqri5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrjJpAEeOXzvVK2MY5wA" 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="_cwqrjppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwqrgZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqrkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrkZpAEeOXzvVK2MY5wA" 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="_cwqrk5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwqrXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwqrlppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_9-SPkBOwEeOy6eRlOY0JBA/159" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrl5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwqrnJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqrmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrmppAEeOXzvVK2MY5wA" 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="_cwqrnJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwqrnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqrnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrn5pAEeOXzvVK2MY5wA" 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="_cwqroJpAEeOXzvVK2MY5wA" 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="_cwqroppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwqro5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqrpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrpZpAEeOXzvVK2MY5wA" 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="_cwqrpppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwqrtJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqrqJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqrqppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqrrJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwqruZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqrrppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqrsJpAEeOXzvVK2MY5wA" 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="_cwqrsppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqrtJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwqrtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqrtppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqrt5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwqruJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqruZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwqruppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqru5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqrvJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwqrvZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrvppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwqrv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqrwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrwZpAEeOXzvVK2MY5wA" 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="_cwqrwppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrxJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwqrvppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqrxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqrx5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwqrvppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqryJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqryppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwqry5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqrzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqrzZpAEeOXzvVK2MY5wA" 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="_cwqrzppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqr0JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwqryppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqr0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqr05pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwqryppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqr1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqr1ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwqryppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqr15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqr2ZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwqr2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwqr25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqr3JpAEeOXzvVK2MY5wA" 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="_cwqr3ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqr35pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwqr2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqr4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqr4ppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwqr2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqr45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqr5ZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwqr2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqr5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqr6JpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwqr2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqr6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqr65pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwqr2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqr7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqr7ppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwqr2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqr75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqr8ZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwqrnJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqr8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqr85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqr9JpAEeOXzvVK2MY5wA" 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="_cwqr9ppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwqr95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqr-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqr-ZpAEeOXzvVK2MY5wA" 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="_cwqr-ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqr_JpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqr_ppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwqr_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqsAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqsAZpAEeOXzvVK2MY5wA" 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="_cwqsAppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqsBJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsBppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwqr_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqsCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqsCZpAEeOXzvVK2MY5wA" 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="_cwqsC5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwqr_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqsDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqsDppAEeOXzvVK2MY5wA" 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="_cwqsEJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwqr2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwqsE5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_N1gcYBOwEeOy6eRlOY0JBA/158" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsFJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwqsGZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqsFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqsF5pAEeOXzvVK2MY5wA" 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="_cwqsGZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwqsGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqsG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqsHJpAEeOXzvVK2MY5wA" 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="_cwqsHZpAEeOXzvVK2MY5wA" 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="_cwqsH5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwqsIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqsIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqsIppAEeOXzvVK2MY5wA" 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="_cwqsI5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwqsMZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqsJZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqsJ5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqsKZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwqsNppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqsK5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqsLZpAEeOXzvVK2MY5wA" 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="_cwqsL5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqsMZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwqsMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqsM5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqsNJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwqsNZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqsNppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwqsN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqsOJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqsOZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwqsOppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsO5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwqsPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqsPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqsPppAEeOXzvVK2MY5wA" 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="_cwqsP5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsQZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwqsO5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsRJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwqsO5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsR5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwqsSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqsSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqsSppAEeOXzvVK2MY5wA" 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="_cwqsS5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsTZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwqsR5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsUJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwqsR5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsU5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwqsR5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsVppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwqsV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwqsWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqsWZpAEeOXzvVK2MY5wA" 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="_cwqsWppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsXJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwqsVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsX5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwqsVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsYppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwqsVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsZZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwqsVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsaJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwqsVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsa5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwqsVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsbppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwqsGZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqscJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqscZpAEeOXzvVK2MY5wA" 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="_cwqsc5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwqsdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqsdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqsdppAEeOXzvVK2MY5wA" 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="_cwqsd5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqseZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqse5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwqsfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqsfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqsfppAEeOXzvVK2MY5wA" 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="_cwqsf5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqsgZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsg5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwqse5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqshJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqshZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqshppAEeOXzvVK2MY5wA" 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="_cwqsiJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwqse5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqsippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqsi5pAEeOXzvVK2MY5wA" 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="_cwqsjZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwqsVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwqskJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_9n_r8BOvEeOy6eRlOY0JBA/157" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqskZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwqslppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqskppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqsk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqslJpAEeOXzvVK2MY5wA" 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="_cwqslppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwqsl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqsmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqsmZpAEeOXzvVK2MY5wA" 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="_cwqsmppAEeOXzvVK2MY5wA" 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="_cwqsnJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwqsnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqsnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqsn5pAEeOXzvVK2MY5wA" 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="_cwqsoJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwqsrppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqsoppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqspJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqspppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwqss5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqsqJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqsqppAEeOXzvVK2MY5wA" 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="_cwqsrJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqsrppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwqsr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqssJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqssZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwqssppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwqss5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwqstJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwqstZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwqstppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwqst5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsuJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwqsuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqsuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqsu5pAEeOXzvVK2MY5wA" 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="_cwqsvJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsvppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwqsuJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqswZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwqsuJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqswppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsxJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwqsxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqsxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqsx5pAEeOXzvVK2MY5wA" 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="_cwqsyJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqsyppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwqsxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqsy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqszZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwqsxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqszppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqs0JpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwqsxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqs0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqs05pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwqs1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwqs1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqs1ppAEeOXzvVK2MY5wA" 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="_cwqs15pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqs2ZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwqs05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqs2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqs3JpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwqs05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqs3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqs35pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwqs05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqs4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqs4ppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwqs05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqs45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqs5ZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwqs05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqs5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqs6JpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwqs05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqs6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqs65pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwqslppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwqs7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqs7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqs7ppAEeOXzvVK2MY5wA" 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="_cwqs8JpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwqs8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqs8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqs85pAEeOXzvVK2MY5wA" 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="_cwqs9JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwqs9ppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqs-JpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwqs-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwqs-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwqs-5pAEeOXzvVK2MY5wA" 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="_cwqs_JpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwqs_ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwqtAJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwqs-JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrRAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrRAppAEeOXzvVK2MY5wA" 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="_cwrRBJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwqs-JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrRBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrRB5pAEeOXzvVK2MY5wA" 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="_cwrRCZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwqs05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwrRDJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_9_QK0BOuEeOy6eRlOY0JBA/156" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRDZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwrREppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrRD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrREJpAEeOXzvVK2MY5wA" 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="_cwrREppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwrRE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrRFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrRFZpAEeOXzvVK2MY5wA" 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="_cwrRFppAEeOXzvVK2MY5wA" 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="_cwrRGJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwrRGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrRGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrRG5pAEeOXzvVK2MY5wA" 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="_cwrRHJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwrRKppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrRHppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrRIJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrRIppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwrRL5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrRJJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwrRJppAEeOXzvVK2MY5wA" 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="_cwrRKJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwrRKppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwrRK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwrRLJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwrRLZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwrRLppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwrRL5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwrRMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwrRMZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwrRMppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwrRM5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRNJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwrRNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrRNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrRN5pAEeOXzvVK2MY5wA" 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="_cwrROJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrROppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwrRNJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRPZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwrRNJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRQJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwrRQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrRQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrRQ5pAEeOXzvVK2MY5wA" 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="_cwrRRJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRRppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwrRQJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRSZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwrRQJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRTJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwrRQJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRT5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwrRUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwrRUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrRUppAEeOXzvVK2MY5wA" 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="_cwrRU5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRVZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwrRT5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRWJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwrRT5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRW5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwrRT5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRXppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwrRT5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRYZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwrRT5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRZJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwrRT5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRZ5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwrREppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrRaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrRappAEeOXzvVK2MY5wA" 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="_cwrRbJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwrRbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrRbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrRb5pAEeOXzvVK2MY5wA" 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="_cwrRcJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrRcppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRdJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwrRdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrRdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrRd5pAEeOXzvVK2MY5wA" 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="_cwrReJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwrReppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRfJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwrRdJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrRfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrRf5pAEeOXzvVK2MY5wA" 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="_cwrRgZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwrRdJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrRg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrRhJpAEeOXzvVK2MY5wA" 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="_cwrRhppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwrRT5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwrRiZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_1EDxcBOuEeOy6eRlOY0JBA/155" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRippAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwrRj5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrRjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrRjZpAEeOXzvVK2MY5wA" 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="_cwrRj5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwrRkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrRkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrRkppAEeOXzvVK2MY5wA" 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="_cwrRk5pAEeOXzvVK2MY5wA" 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="_cwrRlZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwrRlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrRl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrRmJpAEeOXzvVK2MY5wA" 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="_cwrRmZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwrRp5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrRm5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrRnZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrRn5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwrRrJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrRoZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwrRo5pAEeOXzvVK2MY5wA" 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="_cwrRpZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwrRp5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwrRqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwrRqZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwrRqppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwrRq5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwrRrJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwrRrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwrRrppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwrRr5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwrRsJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRsZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwrRsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrRs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrRtJpAEeOXzvVK2MY5wA" 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="_cwrRtZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRt5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwrRsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRuppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwrRsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRvZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwrRvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrRv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrRwJpAEeOXzvVK2MY5wA" 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="_cwrRwZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRw5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwrRvZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRxppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwrRvZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRyZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwrRvZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrRyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrRzJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwrRzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwrRzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrRz5pAEeOXzvVK2MY5wA" 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="_cwrR0JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrR0ppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwrRzJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrR05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrR1ZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwrRzJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrR1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrR2JpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwrRzJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrR2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrR25pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwrRzJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrR3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrR3ppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwrRzJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrR35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrR4ZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwrRzJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrR4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrR5JpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwrRj5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrR5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrR5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrR55pAEeOXzvVK2MY5wA" 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="_cwrR6ZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwrR6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrR65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrR7JpAEeOXzvVK2MY5wA" 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="_cwrR7ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrR75pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrR8ZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwrR8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrR85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrR9JpAEeOXzvVK2MY5wA" 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="_cwrR9ZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwrR95pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrR-ZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwrR8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrR-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrR-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrR_JpAEeOXzvVK2MY5wA" 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="_cwrR_ppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwrR8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrR_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrSAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrSAZpAEeOXzvVK2MY5wA" 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="_cwrSA5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwrRzJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwrSBppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_srFUUBOuEeOy6eRlOY0JBA/154" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSB5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwrSDJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrSCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrSCppAEeOXzvVK2MY5wA" 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="_cwrSDJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwrSDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrSDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrSD5pAEeOXzvVK2MY5wA" 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="_cwrSEJpAEeOXzvVK2MY5wA" 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="_cwrSEppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwrSE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrSFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrSFZpAEeOXzvVK2MY5wA" 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="_cwrSFppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwrSJJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrSGJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrSGppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrSHJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwrSKZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrSHppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwrSIJpAEeOXzvVK2MY5wA" 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="_cwrSIppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwrSJJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwrSJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwrSJppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwrSJ5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwrSKJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwrSKZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwrSKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwrSK5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwrSLJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwrSLZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSLppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwrSL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrSMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrSMZpAEeOXzvVK2MY5wA" 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="_cwrSMppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSNJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwrSLppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSN5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwrSLppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSOppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwrSO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrSPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrSPZpAEeOXzvVK2MY5wA" 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="_cwrSPppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSQJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwrSOppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSQ5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwrSOppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSRppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwrSOppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSSZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwrSSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwrSS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrSTJpAEeOXzvVK2MY5wA" 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="_cwrSTZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrST5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwrSSZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSUppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwrSSZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSVZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwrSSZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSWJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwrSSZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSW5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwrSSZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSXppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwrSSZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSYZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwrSDJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrSY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrSZJpAEeOXzvVK2MY5wA" 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="_cwrSZppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwrSZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrSaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrSaZpAEeOXzvVK2MY5wA" 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="_cwrSappAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrSbJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSbppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwrSb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrScJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrScZpAEeOXzvVK2MY5wA" 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="_cwrScppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwrSdJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSdppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwrSbppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrSeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrSeZpAEeOXzvVK2MY5wA" 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="_cwrSe5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwrSbppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrSfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrSfppAEeOXzvVK2MY5wA" 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="_cwrSgJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwrSSZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwrSg5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_kX-rIBOtEeOy6eRlOY0JBA/153" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrShJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwrSiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrShZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrShppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrSh5pAEeOXzvVK2MY5wA" 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="_cwrSiZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwrSippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrSi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrSjJpAEeOXzvVK2MY5wA" 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="_cwrSjZpAEeOXzvVK2MY5wA" 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="_cwrSj5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwrSkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrSkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrSkppAEeOXzvVK2MY5wA" 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="_cwrSk5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwrSoZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrSlZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrSl5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrSmZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwrSpppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrSm5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwrSnZpAEeOXzvVK2MY5wA" 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="_cwrSn5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwrSoZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwrSoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwrSo5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwrSpJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwrSpZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwrSpppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwrSp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwrSqJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwrSqZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwrSqppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSq5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwrSrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrSrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrSrppAEeOXzvVK2MY5wA" 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="_cwrSr5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSsZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwrSq5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrStJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwrSq5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrStZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSt5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwrSuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrSuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrSuppAEeOXzvVK2MY5wA" 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="_cwrSu5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSvZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwrSt5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSwJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwrSt5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSw5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwrSt5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSxppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwrSx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwrSyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrSyZpAEeOXzvVK2MY5wA" 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="_cwrSyppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSzJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwrSxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrSzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrSz5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwrSxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrS0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrS0ppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwrSxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrS05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrS1ZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwrSxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrS1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrS2JpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwrSxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrS2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrS25pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwrSxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrS3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrS3ppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwrSiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrS35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrS4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrS4ZpAEeOXzvVK2MY5wA" 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="_cwrS45pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwrS5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrS5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrS5ppAEeOXzvVK2MY5wA" 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="_cwrS55pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrS6ZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrS65pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwrS7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrS7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrS7ppAEeOXzvVK2MY5wA" 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="_cwrS75pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwrS8ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrS85pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwrS65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrS9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrS9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrS9ppAEeOXzvVK2MY5wA" 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="_cwrS-JpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwrS65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrS-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrS-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrS-5pAEeOXzvVK2MY5wA" 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="_cwrS_ZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwrSxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrS_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwrTAJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_yCzHQBOrEeOy6eRlOY0JBA/152" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTAZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwrTBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrTA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrTBJpAEeOXzvVK2MY5wA" 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="_cwrTBppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwrTB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrTCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrTCZpAEeOXzvVK2MY5wA" 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="_cwrTCppAEeOXzvVK2MY5wA" 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="_cwrTDJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwrTDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrTDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrTD5pAEeOXzvVK2MY5wA" 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="_cwrTEJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwrTHppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrTEppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrTFJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrTFppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwrTI5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrTGJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwrTGppAEeOXzvVK2MY5wA" 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="_cwrTHJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwrTHppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwrTH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwrTIJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwrTIZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwrTIppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwrTI5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwrTJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwrTJZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwrTJppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwrTJ5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTKJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwrTKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrTKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrTK5pAEeOXzvVK2MY5wA" 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="_cwrTLJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTLppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwrTKJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTMZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwrTKJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTNJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwrTNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrTNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrTN5pAEeOXzvVK2MY5wA" 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="_cwrTOJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTOppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwrTNJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTPZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwrTNJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTQJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwrTNJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTQ5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwrTRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwrTRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrTRppAEeOXzvVK2MY5wA" 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="_cwrTR5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTSZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwrTQ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTTJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwrTQ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTT5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwrTQ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTUppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwrTQ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTVZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwrTQ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTWJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwrTQ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTW5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwrTBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrTXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrTXppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTYJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwrTYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrTYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrTY5pAEeOXzvVK2MY5wA" 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="_cwrTZJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrTZppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTaJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwrTaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrTappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrTa5pAEeOXzvVK2MY5wA" 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="_cwrTbJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwrTbppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTcJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwrTaJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrTcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrTc5pAEeOXzvVK2MY5wA" 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="_cwrTdZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwrTaJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrTd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrTeJpAEeOXzvVK2MY5wA" 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="_cwrTeppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwrTQ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwrTfZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_k39doBOrEeOy6eRlOY0JBA/151" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTfppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwrTg5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrTgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrTgZpAEeOXzvVK2MY5wA" 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="_cwrTg5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwrThJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrThZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrThppAEeOXzvVK2MY5wA" 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="_cwrTh5pAEeOXzvVK2MY5wA" 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="_cwrTiZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwrTippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrTi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrTjJpAEeOXzvVK2MY5wA" 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="_cwrTjZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwrTm5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrTj5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrTkZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrTk5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwrToJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrTlZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwrTl5pAEeOXzvVK2MY5wA" 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="_cwrTmZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwrTm5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwrTnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwrTnZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwrTnppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwrTn5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwrToJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwrToZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwrToppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwrTo5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwrTpJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTpZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwrTpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrTp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrTqJpAEeOXzvVK2MY5wA" 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="_cwrTqZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTq5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwrTpZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTrppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwrTpZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTsZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwrTsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrTs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrTtJpAEeOXzvVK2MY5wA" 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="_cwrTtZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTt5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwrTsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTuppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwrTsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTvZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwrTsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTwJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwrTwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwrTwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrTw5pAEeOXzvVK2MY5wA" 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="_cwrTxJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTxppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwrTwJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTyZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwrTwJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTzJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwrTwJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrTzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrTz5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwrTwJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrT0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrT0ppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwrTwJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrT05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrT1ZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwrTwJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrT1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrT2JpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwrTg5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrT2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrT2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrT25pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrT3ZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwrT3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrT35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrT4JpAEeOXzvVK2MY5wA" 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="_cwrT4ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrT45pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrT5ZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwrT5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrT55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrT6JpAEeOXzvVK2MY5wA" 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="_cwrT6ZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwrT65pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrT7ZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwrT5ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrT7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrT75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrT8JpAEeOXzvVK2MY5wA" 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="_cwrT8ppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwrT5ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrT85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrT9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrT9ZpAEeOXzvVK2MY5wA" 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="_cwrT95pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwrTwJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrT-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwrT-ppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_RkIcgBOrEeOy6eRlOY0JBA/150" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrT-5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwrUAJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrT_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrT_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrT_ppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrUAJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwrUAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrUAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrUA5pAEeOXzvVK2MY5wA" 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="_cwrUBJpAEeOXzvVK2MY5wA" 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="_cwrUBppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwrUB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrUCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrUCZpAEeOXzvVK2MY5wA" 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="_cwrUCppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwrUGJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrUDJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrUDppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrUEJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwrUHZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwrUEppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwrUFJpAEeOXzvVK2MY5wA" 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="_cwrUFppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwrUGJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwrUGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwrUGppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwrUG5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwrUHJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwrUHZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwrUHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwrUH5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwrUIJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwrUIZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrUIppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwrUI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwrUJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwrUJZpAEeOXzvVK2MY5wA" 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="_cwrUJppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrUKJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwrUIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrUKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwrUK5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwrUIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwrULJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4EJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwr4EZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr4EppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr4E5pAEeOXzvVK2MY5wA" 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="_cwr4FJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4FppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwr4EJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4F5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4GZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwr4EJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4GppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4HJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwr4EJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4HZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4H5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwr4IJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwr4IZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr4IppAEeOXzvVK2MY5wA" 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="_cwr4I5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4JZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwr4H5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4JppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4KJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwr4H5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4KZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4K5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwr4H5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4LJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4LppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwr4H5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4L5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4MZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwr4H5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4MppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4NJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwr4H5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4NZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4N5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwrUAJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4OJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr4OZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr4OppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4PJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwr4PZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr4PppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr4P5pAEeOXzvVK2MY5wA" 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="_cwr4QJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr4QppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4RJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwr4RZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr4RppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr4R5pAEeOXzvVK2MY5wA" 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="_cwr4SJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwr4SppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4TJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwr4RJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4TZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr4TppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr4T5pAEeOXzvVK2MY5wA" 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="_cwr4UZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwr4RJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4UppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr4U5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr4VJpAEeOXzvVK2MY5wA" 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="_cwr4VppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwr4H5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4V5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwr4WZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_TZa_oBOqEeOy6eRlOY0JBA/149" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4WppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwr4X5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4W5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr4XJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr4XZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4X5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwr4YJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr4YZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr4YppAEeOXzvVK2MY5wA" 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="_cwr4Y5pAEeOXzvVK2MY5wA" 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="_cwr4ZZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwr4ZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr4Z5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr4aJpAEeOXzvVK2MY5wA" 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="_cwr4aZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwr4d5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr4a5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr4bZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr4b5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwr4fJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr4cZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwr4c5pAEeOXzvVK2MY5wA" 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="_cwr4dZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwr4d5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwr4eJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwr4eZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwr4eppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwr4e5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwr4fJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwr4fZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwr4fppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwr4f5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwr4gJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4gZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwr4gppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr4g5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr4hJpAEeOXzvVK2MY5wA" 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="_cwr4hZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4h5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwr4gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4iJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4ippAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwr4gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4i5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4jZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwr4jppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr4j5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr4kJpAEeOXzvVK2MY5wA" 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="_cwr4kZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4k5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwr4jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4lJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4lppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwr4jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4l5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4mZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwr4jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4mppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4nJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwr4nZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwr4nppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr4n5pAEeOXzvVK2MY5wA" 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="_cwr4oJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4oppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwr4nJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4o5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4pZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwr4nJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4pppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4qJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwr4nJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4qZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4q5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwr4nJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4rJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4rppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwr4nJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4r5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4sZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwr4nJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4sppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4tJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwr4X5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4tZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr4tppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr4t5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4uZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwr4uppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr4u5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr4vJpAEeOXzvVK2MY5wA" 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="_cwr4vZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr4v5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4wZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwr4wppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr4w5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr4xJpAEeOXzvVK2MY5wA" 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="_cwr4xZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwr4x5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4yZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwr4wZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4yppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr4y5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr4zJpAEeOXzvVK2MY5wA" 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="_cwr4zppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwr4wZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr4z5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr40JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr40ZpAEeOXzvVK2MY5wA" 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="_cwr405pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwr4nJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr41JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwr41ppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_KoiOQBOpEeOy6eRlOY0JBA/148" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr415pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwr43JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr42JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr42ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr42ppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr43JpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwr43ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr43ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr435pAEeOXzvVK2MY5wA" 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="_cwr44JpAEeOXzvVK2MY5wA" 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="_cwr44ppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwr445pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr45JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr45ZpAEeOXzvVK2MY5wA" 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="_cwr45ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwr49JpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr46JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr46ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr47JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwr4-ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr47ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwr48JpAEeOXzvVK2MY5wA" 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="_cwr48ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwr49JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwr49ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwr49ppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwr495pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwr4-JpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwr4-ZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwr4-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwr4-5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwr4_JpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwr4_ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr4_ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwr4_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr5AJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5AZpAEeOXzvVK2MY5wA" 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="_cwr5AppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5BJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwr4_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5BZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5B5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwr4_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5CJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5CppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwr5C5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr5DJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5DZpAEeOXzvVK2MY5wA" 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="_cwr5DppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5EJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwr5CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5EZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5E5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwr5CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5FJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5FppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwr5CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5F5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5GZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwr5GppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwr5G5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5HJpAEeOXzvVK2MY5wA" 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="_cwr5HZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5H5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwr5GZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5IJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5IppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwr5GZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5I5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5JZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwr5GZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5JppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5KJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwr5GZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5KZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5K5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwr5GZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5LJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5LppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwr5GZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5L5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5MZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwr43JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5MppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr5M5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5NJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5NppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwr5N5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr5OJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5OZpAEeOXzvVK2MY5wA" 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="_cwr5OppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr5PJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5PppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwr5P5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr5QJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5QZpAEeOXzvVK2MY5wA" 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="_cwr5QppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwr5RJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5RppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwr5PppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5R5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr5SJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5SZpAEeOXzvVK2MY5wA" 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="_cwr5S5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwr5PppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5TJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr5TZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5TppAEeOXzvVK2MY5wA" 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="_cwr5UJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwr5GZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5UZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwr5U5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_8UNNABOoEeOy6eRlOY0JBA/147" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5VJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwr5WZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5VZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr5VppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5V5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5WZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwr5WppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr5W5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5XJpAEeOXzvVK2MY5wA" 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="_cwr5XZpAEeOXzvVK2MY5wA" 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="_cwr5X5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwr5YJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr5YZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5YppAEeOXzvVK2MY5wA" 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="_cwr5Y5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwr5cZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr5ZZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr5Z5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr5aZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwr5dppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr5a5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwr5bZpAEeOXzvVK2MY5wA" 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="_cwr5b5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwr5cZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwr5cppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwr5c5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwr5dJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwr5dZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwr5dppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwr5d5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwr5eJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwr5eZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwr5eppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5e5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwr5fJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr5fZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5fppAEeOXzvVK2MY5wA" 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="_cwr5f5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5gZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwr5e5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5gppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5hJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwr5e5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5hZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5h5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwr5iJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr5iZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5ippAEeOXzvVK2MY5wA" 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="_cwr5i5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5jZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwr5h5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5jppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5kJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwr5h5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5kZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5k5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwr5h5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5lJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5lppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwr5l5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwr5mJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5mZpAEeOXzvVK2MY5wA" 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="_cwr5mppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5nJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwr5lppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5nZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5n5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwr5lppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5oJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5oppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwr5lppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5o5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5pZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwr5lppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5pppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5qJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwr5lppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5qZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5q5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwr5lppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5rJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5rppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwr5WZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5r5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr5sJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5sZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5s5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwr5tJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr5tZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5tppAEeOXzvVK2MY5wA" 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="_cwr5t5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr5uZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5u5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwr5vJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr5vZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5vppAEeOXzvVK2MY5wA" 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="_cwr5v5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwr5wZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5w5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwr5u5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5xJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr5xZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5xppAEeOXzvVK2MY5wA" 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="_cwr5yJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwr5u5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5yZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr5yppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5y5pAEeOXzvVK2MY5wA" 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="_cwr5zZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwr5lppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5zppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwr50JpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_yB0XMBOoEeOy6eRlOY0JBA/146" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr50ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwr51ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr50ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr505pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr51JpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr51ppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwr515pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr52JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr52ZpAEeOXzvVK2MY5wA" 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="_cwr52ppAEeOXzvVK2MY5wA" 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="_cwr53JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwr53ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr53ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr535pAEeOXzvVK2MY5wA" 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="_cwr54JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwr57ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr54ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr55JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr55ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwr585pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr56JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwr56ppAEeOXzvVK2MY5wA" 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="_cwr57JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwr57ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwr575pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwr58JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwr58ZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwr58ppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwr585pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwr59JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwr59ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwr59ppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwr595pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5-JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwr5-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr5-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr5-5pAEeOXzvVK2MY5wA" 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="_cwr5_JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr5_ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwr5-JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr5_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6AZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwr5-JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6AppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6BJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwr6BZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr6BppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6B5pAEeOXzvVK2MY5wA" 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="_cwr6CJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6CppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwr6BJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6C5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6DZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwr6BJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6DppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6EJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwr6BJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6EZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6E5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwr6FJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwr6FZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6FppAEeOXzvVK2MY5wA" 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="_cwr6F5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6GZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwr6E5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6GppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6HJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwr6E5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6HZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6H5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwr6E5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6IJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6IppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwr6E5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6I5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6JZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwr6E5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6JppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6KJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwr6E5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6KZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6K5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwr51ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6LJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr6LZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6LppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6MJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwr6MZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr6MppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6M5pAEeOXzvVK2MY5wA" 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="_cwr6NJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr6NppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6OJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwr6OZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr6OppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6O5pAEeOXzvVK2MY5wA" 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="_cwr6PJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwr6PppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6QJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwr6OJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6QZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr6QppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6Q5pAEeOXzvVK2MY5wA" 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="_cwr6RZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwr6OJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6RppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr6R5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6SJpAEeOXzvVK2MY5wA" 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="_cwr6SppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwr6E5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6S5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwr6TZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_kkLtYBOoEeOy6eRlOY0JBA/145" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6TppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwr6U5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6T5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr6UJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6UZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6U5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwr6VJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr6VZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6VppAEeOXzvVK2MY5wA" 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="_cwr6V5pAEeOXzvVK2MY5wA" 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="_cwr6WZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwr6WppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr6W5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6XJpAEeOXzvVK2MY5wA" 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="_cwr6XZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwr6a5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr6X5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr6YZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr6Y5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwr6cJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr6ZZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwr6Z5pAEeOXzvVK2MY5wA" 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="_cwr6aZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwr6a5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwr6bJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwr6bZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwr6bppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwr6b5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwr6cJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwr6cZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwr6cppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwr6c5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwr6dJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6dZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwr6dppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr6d5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6eJpAEeOXzvVK2MY5wA" 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="_cwr6eZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6e5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwr6dZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6fJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6fppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwr6dZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6f5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6gZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwr6gppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr6g5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6hJpAEeOXzvVK2MY5wA" 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="_cwr6hZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6h5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwr6gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6iJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6ippAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwr6gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6i5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6jZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwr6gZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6jppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6kJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwr6kZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwr6kppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6k5pAEeOXzvVK2MY5wA" 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="_cwr6lJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6lppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwr6kJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6l5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6mZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwr6kJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6mppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6nJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwr6kJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6nZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6n5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwr6kJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6oJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6oppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwr6kJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6o5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6pZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwr6kJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6pppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6qJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwr6U5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6qZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr6qppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6q5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6rZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwr6rppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr6r5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6sJpAEeOXzvVK2MY5wA" 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="_cwr6sZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr6s5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6tZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwr6tppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr6t5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6uJpAEeOXzvVK2MY5wA" 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="_cwr6uZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwr6u5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6vZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwr6tZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6vppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr6v5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6wJpAEeOXzvVK2MY5wA" 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="_cwr6wppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwr6tZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6w5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr6xJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6xZpAEeOXzvVK2MY5wA" 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="_cwr6x5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwr6kJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6yJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwr6yppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_IOQZoBOoEeOy6eRlOY0JBA/144" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6y5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwr60JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6zJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr6zZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr6zppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr60JpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwr60ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr60ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr605pAEeOXzvVK2MY5wA" 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="_cwr61JpAEeOXzvVK2MY5wA" 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="_cwr61ppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwr615pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr62JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr62ZpAEeOXzvVK2MY5wA" 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="_cwr62ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwr66JpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr63JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr63ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr64JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwr67ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwr64ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwr65JpAEeOXzvVK2MY5wA" 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="_cwr65ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwr66JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwr66ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwr66ppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwr665pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwr67JpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwr67ZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwr67ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwr675pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwr68JpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwr68ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr68ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwr685pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr69JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr69ZpAEeOXzvVK2MY5wA" 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="_cwr69ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6-JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwr68ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6-5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwr68ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr6_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr6_ppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwr6_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr7AJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr7AZpAEeOXzvVK2MY5wA" 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="_cwr7AppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr7BJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwr6_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr7BZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr7B5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwr6_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr7CJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr7CppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwr6_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr7C5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr7DZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwr7DppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwr7D5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr7EJpAEeOXzvVK2MY5wA" 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="_cwr7EZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr7E5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwr7DZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr7FJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr7FppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwr7DZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr7F5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr7GZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwr7DZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr7GppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr7HJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwr7DZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr7HZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr7H5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwr7DZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr7IJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr7IppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwr7DZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr7I5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr7JZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwr60JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwr7JppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr7J5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr7KJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwr7KppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwr7K5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwr7LJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwr7LZpAEeOXzvVK2MY5wA" 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="_cwr7LppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsfIJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfIppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwsfI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsfJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsfJZpAEeOXzvVK2MY5wA" 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="_cwsfJppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwsfKJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfKppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwsfIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsfLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsfLZpAEeOXzvVK2MY5wA" 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="_cwsfL5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwsfIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsfMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsfMppAEeOXzvVK2MY5wA" 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="_cwsfNJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwr7DZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwsfN5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_VqKFoBFZEeODGMc-klr1xw/143" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfOJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwsfPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsfOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsfO5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfPZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwsfPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsfP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsfQJpAEeOXzvVK2MY5wA" 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="_cwsfQZpAEeOXzvVK2MY5wA" 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="_cwsfQ5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwsfRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsfRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsfRppAEeOXzvVK2MY5wA" 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="_cwsfR5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwsfVZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsfSZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsfS5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsfTZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwsfWppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsfT5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwsfUZpAEeOXzvVK2MY5wA" 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="_cwsfU5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwsfVZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwsfVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwsfV5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwsfWJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwsfWZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwsfWppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwsfW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwsfXJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwsfXZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwsfXppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfX5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwsfYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsfYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsfYppAEeOXzvVK2MY5wA" 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="_cwsfY5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfZZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwsfX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfaJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwsfX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfa5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwsfbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsfbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsfbppAEeOXzvVK2MY5wA" 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="_cwsfb5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfcZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwsfa5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfdJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwsfa5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfd5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwsfa5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfeppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwsfe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwsffJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsffZpAEeOXzvVK2MY5wA" 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="_cwsffppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfgJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwsfeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfg5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwsfeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfhppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwsfeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfiZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwsfeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfjJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwsfeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfj5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwsfeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfkppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwsfPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsflJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsflZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfl5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwsfmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsfmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsfmppAEeOXzvVK2MY5wA" 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="_cwsfm5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsfnZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfn5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwsfoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsfoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsfoppAEeOXzvVK2MY5wA" 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="_cwsfo5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwsfpZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfp5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwsfn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsfqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsfqppAEeOXzvVK2MY5wA" 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="_cwsfrJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwsfn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsfrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsfr5pAEeOXzvVK2MY5wA" 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="_cwsfsZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwsfeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsfsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwsftJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_M9yycBFZEeODGMc-klr1xw/142" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsftZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwsfuppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsftppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsft5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsfuJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsfuppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwsfu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsfvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsfvZpAEeOXzvVK2MY5wA" 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="_cwsfvppAEeOXzvVK2MY5wA" 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="_cwsfwJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwsfwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsfwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsfw5pAEeOXzvVK2MY5wA" 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="_cwsfxJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwsf0ppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsfxppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsfyJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsfyppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwsf15pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsfzJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwsfzppAEeOXzvVK2MY5wA" 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="_cwsf0JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwsf0ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwsf05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwsf1JpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwsf1ZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwsf1ppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwsf15pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwsf2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwsf2ZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwsf2ppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwsf25pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsf3JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwsf3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsf3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsf35pAEeOXzvVK2MY5wA" 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="_cwsf4JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsf4ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwsf3JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsf45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsf5ZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwsf3JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsf5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsf6JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwsf6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsf6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsf65pAEeOXzvVK2MY5wA" 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="_cwsf7JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsf7ppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwsf6JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsf75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsf8ZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwsf6JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsf8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsf9JpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwsf6JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsf9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsf95pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwsf-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwsf-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsf-ppAEeOXzvVK2MY5wA" 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="_cwsf-5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsf_ZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwsf95pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsf_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgAJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwsf95pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgA5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwsf95pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgBppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwsf95pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgCZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwsf95pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgDJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwsf95pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgD5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwsfuppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsgEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsgEppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgFJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwsgFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsgFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsgF5pAEeOXzvVK2MY5wA" 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="_cwsgGJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsgGppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgHJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwsgHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsgHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsgH5pAEeOXzvVK2MY5wA" 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="_cwsgIJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwsgIppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgJJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwsgHJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsgJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsgJ5pAEeOXzvVK2MY5wA" 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="_cwsgKZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwsgHJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsgK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsgLJpAEeOXzvVK2MY5wA" 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="_cwsgLppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwsf95pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwsgMZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_-okZUBFYEeODGMc-klr1xw/141" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgMppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwsgN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsgNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsgNZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgN5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwsgOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsgOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsgOppAEeOXzvVK2MY5wA" 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="_cwsgO5pAEeOXzvVK2MY5wA" 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="_cwsgPZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwsgPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsgP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsgQJpAEeOXzvVK2MY5wA" 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="_cwsgQZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwsgT5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsgQ5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsgRZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsgR5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwsgVJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsgSZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwsgS5pAEeOXzvVK2MY5wA" 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="_cwsgTZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwsgT5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwsgUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwsgUZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwsgUppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwsgU5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwsgVJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwsgVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwsgVppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwsgV5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwsgWJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgWZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwsgWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsgW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsgXJpAEeOXzvVK2MY5wA" 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="_cwsgXZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgX5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwsgWZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgYppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwsgWZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgZZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwsgZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsgZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsgaJpAEeOXzvVK2MY5wA" 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="_cwsgaZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsga5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwsgZZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgbppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwsgZZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgcZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwsgZZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgdJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwsgdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwsgdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsgd5pAEeOXzvVK2MY5wA" 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="_cwsgeJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgeppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwsgdJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsge5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgfZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwsgdJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsggJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwsgdJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsggZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgg5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwsgdJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsghJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsghppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwsgdJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgiZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwsgdJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgjJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwsgN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsgjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsgj5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgkZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwsgkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsgk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsglJpAEeOXzvVK2MY5wA" 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="_cwsglZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsgl5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgmZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwsgmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsgm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsgnJpAEeOXzvVK2MY5wA" 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="_cwsgnZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwsgn5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgoZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwsgmZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsgo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsgpJpAEeOXzvVK2MY5wA" 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="_cwsgpppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwsgmZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsgqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsgqZpAEeOXzvVK2MY5wA" 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="_cwsgq5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwsgdJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwsgrppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_cgL0MBFXEeODGMc-klr1xw/140" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgr5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwsgtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsgsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsgsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsgsppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsgtJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwsgtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsgtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsgt5pAEeOXzvVK2MY5wA" 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="_cwsguJpAEeOXzvVK2MY5wA" 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="_cwsguppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwsgu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsgvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsgvZpAEeOXzvVK2MY5wA" 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="_cwsgvppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwsgzJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsgwJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsgwppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsgxJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwsg0ZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsgxppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwsgyJpAEeOXzvVK2MY5wA" 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="_cwsgyppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwsgzJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwsgzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwsgzppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwsgz5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwsg0JpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwsg0ZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwsg0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwsg05pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwsg1JpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwsg1ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsg1ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwsg15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsg2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsg2ZpAEeOXzvVK2MY5wA" 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="_cwsg2ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsg3JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwsg1ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsg3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsg35pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwsg1ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsg4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsg4ppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwsg45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsg5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsg5ZpAEeOXzvVK2MY5wA" 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="_cwsg5ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsg6JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwsg4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsg6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsg65pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwsg4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsg7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsg7ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwsg4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsg75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsg8ZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwsg8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwsg85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsg9JpAEeOXzvVK2MY5wA" 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="_cwsg9ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsg95pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwsg8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsg-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsg-ppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwsg8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsg-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsg_ZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwsg8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsg_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshAJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwsg8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshA5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwsg8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshBppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwsg8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshCZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwsgtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwshC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwshDJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshDppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwshD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwshEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwshEZpAEeOXzvVK2MY5wA" 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="_cwshEppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwshFJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshFppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwshF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwshGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwshGZpAEeOXzvVK2MY5wA" 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="_cwshGppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwshHJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshHppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwshFppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwshIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwshIZpAEeOXzvVK2MY5wA" 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="_cwshI5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwshFppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwshJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwshJppAEeOXzvVK2MY5wA" 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="_cwshKJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwsg8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwshK5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_XAU5QBFXEeODGMc-klr1xw/139" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshLJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwshMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwshLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwshL5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshMZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwshMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwshM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwshNJpAEeOXzvVK2MY5wA" 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="_cwshNZpAEeOXzvVK2MY5wA" 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="_cwshN5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwshOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwshOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwshOppAEeOXzvVK2MY5wA" 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="_cwshO5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwshSZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwshPZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwshP5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwshQZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwshTppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwshQ5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwshRZpAEeOXzvVK2MY5wA" 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="_cwshR5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwshSZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwshSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwshS5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwshTJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwshTZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwshTppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwshT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwshUJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwshUZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwshUppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshU5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwshVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwshVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwshVppAEeOXzvVK2MY5wA" 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="_cwshV5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshWZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwshU5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshXJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwshU5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshX5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwshYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwshYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwshYppAEeOXzvVK2MY5wA" 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="_cwshY5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshZZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwshX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshaJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwshX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsha5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwshX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshbppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwshb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwshcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwshcZpAEeOXzvVK2MY5wA" 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="_cwshcppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshdJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwshbppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshd5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwshbppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsheJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsheppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwshbppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshfZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwshbppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshgJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwshbppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshg5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwshbppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshhppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwshMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwshiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwshiZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshi5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwshjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwshjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwshjppAEeOXzvVK2MY5wA" 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="_cwshj5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwshkZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshk5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwshlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwshlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwshlppAEeOXzvVK2MY5wA" 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="_cwshl5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwshmZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshm5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwshk5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwshnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwshnppAEeOXzvVK2MY5wA" 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="_cwshoJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwshk5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwshoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsho5pAEeOXzvVK2MY5wA" 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="_cwshpZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwshbppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwshqJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_QORWoBFXEeODGMc-klr1xw/138" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshqZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwshrppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwshqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwshq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwshrJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwshrppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwshr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwshsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwshsZpAEeOXzvVK2MY5wA" 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="_cwshsppAEeOXzvVK2MY5wA" 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="_cwshtJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwshtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwshtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsht5pAEeOXzvVK2MY5wA" 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="_cwshuJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwshxppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwshuppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwshvJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwshvppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwshy5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwshwJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwshwppAEeOXzvVK2MY5wA" 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="_cwshxJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwshxppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwshx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwshyJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwshyZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwshyppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwshy5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwshzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwshzZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwshzppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwshz5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsh0JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwsh0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsh0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsh05pAEeOXzvVK2MY5wA" 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="_cwsh1JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsh1ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwsh0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsh15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsh2ZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwsh0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsh2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsh3JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwsh3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsh3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsh35pAEeOXzvVK2MY5wA" 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="_cwsh4JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsh4ppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwsh3JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsh45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsh5ZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwsh3JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsh5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsh6JpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwsh3JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsh6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsh65pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwsh7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwsh7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsh7ppAEeOXzvVK2MY5wA" 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="_cwsh75pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsh8ZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwsh65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsh8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsh9JpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwsh65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsh9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsh95pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwsh65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsh-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsh-ppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwsh65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsh-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsh_ZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwsh65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsh_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsiAJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwsh65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsiAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsiA5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwshrppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsiBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsiBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsiBppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsiCJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwsiCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsiCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsiC5pAEeOXzvVK2MY5wA" 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="_cwsiDJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsiDppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsiEJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwsiEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsiEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsiE5pAEeOXzvVK2MY5wA" 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="_cwsiFJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwsiFppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsiGJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwsiEJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsiGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsiGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsiG5pAEeOXzvVK2MY5wA" 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="_cwsiHZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwsiEJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsiHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsiH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsiIJpAEeOXzvVK2MY5wA" 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="_cwsiIppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwsh65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsiI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwsiJZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_LX1MIBFXEeODGMc-klr1xw/137" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsiJppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwsiK5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsiJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsiKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsiKZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsiK5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwsiLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsiLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsiLppAEeOXzvVK2MY5wA" 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="_cwsiL5pAEeOXzvVK2MY5wA" 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="_cwsiMZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwsiMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsiM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsiNJpAEeOXzvVK2MY5wA" 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="_cwsiNZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwsiQ5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsiN5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsiOZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsiO5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwsiSJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwsiPZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwsiP5pAEeOXzvVK2MY5wA" 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="_cwsiQZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwsiQ5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwsiRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwsiRZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwsiRppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwsiR5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwsiSJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwsiSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwsiSppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwsiS5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwsiTJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsiTZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwsiTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwsiT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwsiUJpAEeOXzvVK2MY5wA" 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="_cwsiUZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsiU5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwsiTZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsiVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsiVppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwsiTZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwsiV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwsiWZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwsiWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtGMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtGMZpAEeOXzvVK2MY5wA" 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="_cwtGMppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGNJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwsiWZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGN5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwsiWZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGOppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwsiWZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGPZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwtGPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwtGP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtGQJpAEeOXzvVK2MY5wA" 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="_cwtGQZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGQ5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwtGPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGRppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwtGPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGSZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwtGPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGTJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwtGPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGT5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwtGPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGUppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwtGPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGVZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwsiK5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtGV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtGWJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGWppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwtGW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtGXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtGXZpAEeOXzvVK2MY5wA" 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="_cwtGXppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtGYJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGYppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwtGY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtGZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtGZZpAEeOXzvVK2MY5wA" 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="_cwtGZppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtGaJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGappAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwtGYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtGbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtGbZpAEeOXzvVK2MY5wA" 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="_cwtGb5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwtGYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtGcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtGcppAEeOXzvVK2MY5wA" 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="_cwtGdJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwtGPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwtGd5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_YtgCMBFWEeODGMc-klr1xw/136" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGeJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwtGfZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtGeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtGe5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGfZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwtGfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtGf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtGgJpAEeOXzvVK2MY5wA" 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="_cwtGgZpAEeOXzvVK2MY5wA" 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="_cwtGg5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwtGhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtGhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtGhppAEeOXzvVK2MY5wA" 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="_cwtGh5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwtGlZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtGiZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtGi5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtGjZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwtGmppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtGj5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtGkZpAEeOXzvVK2MY5wA" 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="_cwtGk5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtGlZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwtGlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtGl5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwtGmJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwtGmZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtGmppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwtGm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtGnJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwtGnZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwtGnppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGn5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwtGoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtGoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtGoppAEeOXzvVK2MY5wA" 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="_cwtGo5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGpZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwtGn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGqJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwtGn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGq5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwtGrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtGrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtGrppAEeOXzvVK2MY5wA" 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="_cwtGr5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGsZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwtGq5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGtJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwtGq5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGt5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwtGq5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGuppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwtGu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwtGvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtGvZpAEeOXzvVK2MY5wA" 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="_cwtGvppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGwJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwtGuppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGw5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwtGuppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGxppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwtGuppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGyZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwtGuppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGzJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwtGuppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtGzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtGz5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwtGuppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtG0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtG0ppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwtGfZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtG05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtG1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtG1ZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtG15pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwtG2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtG2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtG2ppAEeOXzvVK2MY5wA" 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="_cwtG25pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtG3ZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtG35pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwtG4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtG4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtG4ppAEeOXzvVK2MY5wA" 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="_cwtG45pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtG5ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtG55pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwtG35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtG6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtG6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtG6ppAEeOXzvVK2MY5wA" 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="_cwtG7JpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwtG35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtG7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtG7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtG75pAEeOXzvVK2MY5wA" 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="_cwtG8ZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwtGuppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtG8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwtG9JpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_NYrfABFWEeODGMc-klr1xw/135" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtG9ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwtG-ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtG9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtG95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtG-JpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtG-ppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwtG-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtG_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtG_ZpAEeOXzvVK2MY5wA" 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="_cwtG_ppAEeOXzvVK2MY5wA" 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="_cwtHAJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwtHAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtHAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtHA5pAEeOXzvVK2MY5wA" 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="_cwtHBJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwtHEppAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtHBppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtHCJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtHCppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwtHF5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtHDJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtHDppAEeOXzvVK2MY5wA" 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="_cwtHEJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtHEppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwtHE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtHFJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwtHFZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwtHFppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtHF5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwtHGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtHGZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwtHGppAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwtHG5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHHJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwtHHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtHHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtHH5pAEeOXzvVK2MY5wA" 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="_cwtHIJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHIppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwtHHJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHJZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwtHHJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHKJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwtHKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtHKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtHK5pAEeOXzvVK2MY5wA" 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="_cwtHLJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHLppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwtHKJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHMZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwtHKJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHNJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwtHKJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHN5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwtHOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwtHOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtHOppAEeOXzvVK2MY5wA" 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="_cwtHO5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHPZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwtHN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHQJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwtHN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHQ5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwtHN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHRppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwtHN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHSZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwtHN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHTJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwtHN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHT5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwtG-ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtHUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtHUppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHVJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwtHVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtHVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtHV5pAEeOXzvVK2MY5wA" 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="_cwtHWJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtHWppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHXJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwtHXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtHXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtHX5pAEeOXzvVK2MY5wA" 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="_cwtHYJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtHYppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHZJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwtHXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtHZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtHZ5pAEeOXzvVK2MY5wA" 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="_cwtHaZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwtHXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtHa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtHbJpAEeOXzvVK2MY5wA" 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="_cwtHbppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwtHN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwtHcZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_Dyfn4BFWEeODGMc-klr1xw/134" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHcppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwtHd5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtHdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtHdZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHd5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwtHeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtHeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtHeppAEeOXzvVK2MY5wA" 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="_cwtHe5pAEeOXzvVK2MY5wA" 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="_cwtHfZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwtHfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtHf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtHgJpAEeOXzvVK2MY5wA" 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="_cwtHgZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwtHj5pAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtHg5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtHhZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtHh5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwtHlJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtHiZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtHi5pAEeOXzvVK2MY5wA" 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="_cwtHjZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtHj5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwtHkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtHkZpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwtHkppAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwtHk5pAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtHlJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwtHlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtHlppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwtHl5pAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwtHmJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHmZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwtHmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtHm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtHnJpAEeOXzvVK2MY5wA" 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="_cwtHnZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHn5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwtHmZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHoppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwtHmZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHpZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwtHpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtHp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtHqJpAEeOXzvVK2MY5wA" 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="_cwtHqZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHq5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwtHpZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHrppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwtHpZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHsZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwtHpZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHtJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwtHtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwtHtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtHt5pAEeOXzvVK2MY5wA" 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="_cwtHuJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHuppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwtHtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHvZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwtHtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHwJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwtHtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHw5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwtHtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHxppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwtHtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHyZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwtHtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtHzJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwtHd5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtHzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtHzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtHz5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtH0ZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwtH0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtH05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtH1JpAEeOXzvVK2MY5wA" 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="_cwtH1ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtH15pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtH2ZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwtH2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtH25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtH3JpAEeOXzvVK2MY5wA" 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="_cwtH3ZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtH35pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtH4ZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwtH2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtH4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtH45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtH5JpAEeOXzvVK2MY5wA" 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="_cwtH5ppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwtH2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtH55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtH6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtH6ZpAEeOXzvVK2MY5wA" 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="_cwtH65pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwtHtJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtH7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwtH7ppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_-N7MEBFVEeODGMc-klr1xw/133" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtH75pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwtH9JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtH8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtH8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtH8ppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtH9JpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwtH9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtH9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtH95pAEeOXzvVK2MY5wA" 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="_cwtH-JpAEeOXzvVK2MY5wA" 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="_cwtH-ppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwtH-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtH_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtH_ZpAEeOXzvVK2MY5wA" 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="_cwtH_ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwtIDJpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtIAJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtIAppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtIBJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwtIEZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtIBppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtICJpAEeOXzvVK2MY5wA" 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="_cwtICppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtIDJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwtIDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtIDppAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwtID5pAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwtIEJpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtIEZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwtIEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtIE5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwtIFJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwtIFZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIFppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwtIF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtIGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtIGZpAEeOXzvVK2MY5wA" 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="_cwtIGppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIHJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwtIFppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIH5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwtIFppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIIppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwtII5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtIJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtIJZpAEeOXzvVK2MY5wA" 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="_cwtIJppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIKJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwtIIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIK5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwtIIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtILJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtILppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwtIIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIMZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwtIMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwtIM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtINJpAEeOXzvVK2MY5wA" 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="_cwtINZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIN5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwtIMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIOppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwtIMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIPZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwtIMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIQJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwtIMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIQ5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwtIMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIRppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwtIMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtISZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwtH9JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtISppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtIS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtITJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtITppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwtIT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtIUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtIUZpAEeOXzvVK2MY5wA" 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="_cwtIUppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtIVJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIVppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwtIV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtIWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtIWZpAEeOXzvVK2MY5wA" 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="_cwtIWppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtIXJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIXppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwtIVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtIYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtIYZpAEeOXzvVK2MY5wA" 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="_cwtIY5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwtIVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtIZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtIZppAEeOXzvVK2MY5wA" 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="_cwtIaJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwtIMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwtIa5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_ugpa4BFVEeODGMc-klr1xw/132" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIbJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwtIcZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtIbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtIb5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIcZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwtIcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtIc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtIdJpAEeOXzvVK2MY5wA" 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="_cwtIdZpAEeOXzvVK2MY5wA" 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="_cwtId5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwtIeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtIeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtIeppAEeOXzvVK2MY5wA" 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="_cwtIe5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwtIiZpAEeOXzvVK2MY5wA" defaultValueLiteral="NONE"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtIfZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtIf5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtIgZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwtIjppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtIg5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtIhZpAEeOXzvVK2MY5wA" 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="_cwtIh5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtIiZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwtIippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtIi5pAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwtIjJpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwtIjZpAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtIjppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwtIj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtIkJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwtIkZpAEeOXzvVK2MY5wA" name="FIXED_VALUE" value="1"/>
          <eLiterals xmi:id="_cwtIkppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIk5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwtIlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtIlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtIlppAEeOXzvVK2MY5wA" 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="_cwtIl5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtImZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwtIk5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtImppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtInJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwtIk5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtInZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIn5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwtIoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtIoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtIoppAEeOXzvVK2MY5wA" 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="_cwtIo5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIpZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwtIn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIqJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwtIn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIq5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwtIn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIrppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwtIr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwtIsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtIsZpAEeOXzvVK2MY5wA" 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="_cwtIsppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtItJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwtIrppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtItZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIt5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwtIrppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIuppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwtIrppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIvZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwtIrppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIwJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwtIrppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIw5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwtIrppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIxppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwtIcZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtIx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtIyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtIyZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtIy5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwtIzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtIzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtIzppAEeOXzvVK2MY5wA" 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="_cwtIz5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtI0ZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtI05pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwtI1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtI1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtI1ppAEeOXzvVK2MY5wA" 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="_cwtI15pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtI2ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtI25pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwtI05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtI3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtI3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtI3ppAEeOXzvVK2MY5wA" 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="_cwtI4JpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwtI05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtI4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtI4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtI45pAEeOXzvVK2MY5wA" 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="_cwtI5ZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwtIrppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtI5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwtI6JpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_nXg1ABFVEeODGMc-klr1xw/131" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtI6ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwtI7ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtI6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtI65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtI7JpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtI7ppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwtI75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtI8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtI8ZpAEeOXzvVK2MY5wA" 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="_cwtI8ppAEeOXzvVK2MY5wA" 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="_cwtI9JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwtI9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtI9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtI95pAEeOXzvVK2MY5wA" 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="_cwtI-JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwtJBppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtI-ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtI_JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtI_ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwtJC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtJAJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtJAppAEeOXzvVK2MY5wA" 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="_cwtJBJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtJBppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwtJB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtJCJpAEeOXzvVK2MY5wA" name="NONE"/>
          <eLiterals xmi:id="_cwtJCZpAEeOXzvVK2MY5wA" name="OFFICER" value="1"/>
          <eLiterals xmi:id="_cwtJCppAEeOXzvVK2MY5wA" name="OTHER" value="2"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtJC5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwtJDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtJDZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwtJDppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtJD5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwtJEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtJEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtJEppAEeOXzvVK2MY5wA" 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="_cwtJE5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtJFZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwtJD5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtJFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtJGJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwtJD5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtJGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtJG5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwtJHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtJHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtJHppAEeOXzvVK2MY5wA" 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="_cwtJH5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtJIZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwtJG5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtJIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtJJJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwtJG5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtJJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtJJ5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwtJG5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtJKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtJKppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwtJK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwtJLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtJLZpAEeOXzvVK2MY5wA" 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="_cwtJLppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtJMJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwtJKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtJMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtJM5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwtJKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtJNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtJNppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwtJKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtJN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtJOZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwtJKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtJOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtJPJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwtJKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtJPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtJP5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwtJKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtJQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttQZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwtI7ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwttQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwttQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwttRJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttRppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwttR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwttSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwttSZpAEeOXzvVK2MY5wA" 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="_cwttSppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwttTJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttTppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwttT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwttUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwttUZpAEeOXzvVK2MY5wA" 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="_cwttUppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwttVJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttVppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwttTppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwttV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwttWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwttWZpAEeOXzvVK2MY5wA" 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="_cwttW5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwttTppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwttXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwttXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwttXppAEeOXzvVK2MY5wA" 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="_cwttYJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwtJKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwttYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwttY5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_ZzvuABFVEeODGMc-klr1xw/130" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttZJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwttaZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwttZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwttZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwttZ5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttaZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwttappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtta5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwttbJpAEeOXzvVK2MY5wA" 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="_cwttbZpAEeOXzvVK2MY5wA" 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="_cwttb5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwttcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwttcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwttcppAEeOXzvVK2MY5wA" 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="_cwttc5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwttgZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwttdZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwttd5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtteZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwtthZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtte5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwttfZpAEeOXzvVK2MY5wA" 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="_cwttf5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwttgZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwttgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwttg5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwtthJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtthZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwtthppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtth5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwttiJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttiZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwttippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtti5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwttjJpAEeOXzvVK2MY5wA" 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="_cwttjZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttj5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwttiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwttkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttkppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwttiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwttk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttlZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwttlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwttl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwttmJpAEeOXzvVK2MY5wA" 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="_cwttmZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttm5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwttlZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwttnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttnppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwttlZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwttn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttoZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwttlZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwttoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttpJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwttpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwttpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwttp5pAEeOXzvVK2MY5wA" 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="_cwttqJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttqppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwttpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwttq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttrZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwttpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwttrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttsJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwttpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwttsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtts5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwttpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtttJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtttppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwttpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwttt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttuZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwttpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwttuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttvJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwttaZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwttvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwttvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwttv5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttwZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwttwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwttw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwttxJpAEeOXzvVK2MY5wA" 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="_cwttxZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwttx5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwttyZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwttyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtty5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwttzJpAEeOXzvVK2MY5wA" 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="_cwttzZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwttz5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtt0ZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwttyZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtt0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtt05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtt1JpAEeOXzvVK2MY5wA" 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="_cwtt1ppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwttyZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtt15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtt2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtt2ZpAEeOXzvVK2MY5wA" 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="_cwtt25pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwttpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtt3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwtt3ppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_ph_lABFUEeODGMc-klr1xw/129" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtt35pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwtt5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtt4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtt4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtt4ppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtt5JpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwtt5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtt5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtt55pAEeOXzvVK2MY5wA" 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="_cwtt6JpAEeOXzvVK2MY5wA" 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="_cwtt6ppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwtt65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtt7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtt7ZpAEeOXzvVK2MY5wA" 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="_cwtt7ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwtt_JpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtt8JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtt8ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtt9JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwtuAJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtt9ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtt-JpAEeOXzvVK2MY5wA" 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="_cwtt-ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtt_JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwtt_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtt_ppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwtt_5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtuAJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwtuAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtuAppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwtuA5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuBJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwtuBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtuBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtuB5pAEeOXzvVK2MY5wA" 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="_cwtuCJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuCppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwtuBJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuDZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwtuBJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuEJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwtuEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtuEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtuE5pAEeOXzvVK2MY5wA" 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="_cwtuFJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuFppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwtuEJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuGZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwtuEJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuHJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwtuEJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuH5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwtuIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwtuIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtuIppAEeOXzvVK2MY5wA" 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="_cwtuI5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuJZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwtuH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuKJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwtuH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuK5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwtuH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuLppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwtuH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuMZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwtuH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuNJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwtuH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuN5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwtt5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtuOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtuOppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuPJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwtuPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtuPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtuP5pAEeOXzvVK2MY5wA" 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="_cwtuQJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtuQppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuRJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwtuRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtuRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtuR5pAEeOXzvVK2MY5wA" 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="_cwtuSJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtuSppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuTJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwtuRJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtuTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtuT5pAEeOXzvVK2MY5wA" 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="_cwtuUZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwtuRJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtuU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtuVJpAEeOXzvVK2MY5wA" 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="_cwtuVppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwtuH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwtuWZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_PgaScBFUEeODGMc-klr1xw/128" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuWppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwtuX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtuXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtuXZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuX5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwtuYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtuYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtuYppAEeOXzvVK2MY5wA" 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="_cwtuY5pAEeOXzvVK2MY5wA" 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="_cwtuZZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwtuZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtuZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtuaJpAEeOXzvVK2MY5wA" 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="_cwtuaZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwtud5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtua5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtubZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtub5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwtue5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtucZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtuc5pAEeOXzvVK2MY5wA" 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="_cwtudZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtud5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwtueJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtueZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwtueppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtue5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwtufJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtufZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwtufppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuf5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwtugJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtugZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtugppAEeOXzvVK2MY5wA" 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="_cwtug5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuhZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwtuf5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuiJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwtuf5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtui5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwtujJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtujZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtujppAEeOXzvVK2MY5wA" 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="_cwtuj5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtukZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwtui5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtukppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtulJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwtui5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtulZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtul5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwtui5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtumJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtumppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwtum5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwtunJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtunZpAEeOXzvVK2MY5wA" 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="_cwtunppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuoJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwtumppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuo5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwtumppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtupJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtupppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwtumppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtup5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuqZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwtumppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwturJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwtumppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwturZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtur5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwtumppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtusJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtusppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwtuX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtus5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtutJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtutZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtut5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwtuuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtuuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtuuppAEeOXzvVK2MY5wA" 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="_cwtuu5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtuvZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtuv5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwtuwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtuwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtuwppAEeOXzvVK2MY5wA" 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="_cwtuw5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtuxZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtux5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwtuv5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtuyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtuyppAEeOXzvVK2MY5wA" 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="_cwtuzJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwtuv5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtuzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtuzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtuz5pAEeOXzvVK2MY5wA" 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="_cwtu0ZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwtumppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtu0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwtu1JpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_iP7-kBFSEeODGMc-klr1xw/127" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtu1ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwtu2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtu1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtu15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtu2JpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtu2ppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwtu25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtu3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtu3ZpAEeOXzvVK2MY5wA" 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="_cwtu3ppAEeOXzvVK2MY5wA" 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="_cwtu4JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwtu4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtu4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtu45pAEeOXzvVK2MY5wA" 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="_cwtu5JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwtu8ppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtu5ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtu6JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtu6ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwtu9ppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtu7JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtu7ppAEeOXzvVK2MY5wA" 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="_cwtu8JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtu8ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwtu85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtu9JpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwtu9ZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtu9ppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwtu95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtu-JpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwtu-ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtu-ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwtu-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtu_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtu_ZpAEeOXzvVK2MY5wA" 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="_cwtu_ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvAJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwtu-ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvA5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwtu-ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvBppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwtvB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtvCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtvCZpAEeOXzvVK2MY5wA" 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="_cwtvCppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvDJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwtvBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvD5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwtvBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvEppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwtvBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvFZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwtvFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwtvF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtvGJpAEeOXzvVK2MY5wA" 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="_cwtvGZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvG5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwtvFZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvHppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwtvFZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvIZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwtvFZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvJJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwtvFZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvJ5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwtvFZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvKppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwtvFZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvLZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwtu2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtvL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtvMJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvMppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwtvM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtvNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtvNZpAEeOXzvVK2MY5wA" 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="_cwtvNppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtvOJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvOppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwtvO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtvPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtvPZpAEeOXzvVK2MY5wA" 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="_cwtvPppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtvQJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvQppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwtvOppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtvRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtvRZpAEeOXzvVK2MY5wA" 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="_cwtvR5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwtvOppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtvSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtvSppAEeOXzvVK2MY5wA" 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="_cwtvTJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwtvFZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwtvT5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_RCGg8BFPEeODGMc-klr1xw/126" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvUJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwtvVZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtvUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtvU5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvVZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwtvVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtvV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtvWJpAEeOXzvVK2MY5wA" 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="_cwtvWZpAEeOXzvVK2MY5wA" 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="_cwtvW5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwtvXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtvXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtvXppAEeOXzvVK2MY5wA" 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="_cwtvX5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwtvbZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtvYZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtvY5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtvZZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwtvcZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtvZ5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtvaZpAEeOXzvVK2MY5wA" 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="_cwtva5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtvbZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwtvbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtvb5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwtvcJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtvcZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwtvcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtvc5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwtvdJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvdZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwtvdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtvd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtveJpAEeOXzvVK2MY5wA" 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="_cwtveZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtve5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwtvdZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvfppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwtvdZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvgZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwtvgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtvg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtvhJpAEeOXzvVK2MY5wA" 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="_cwtvhZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvh5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwtvgZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtviJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvippAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwtvgZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvjZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwtvgZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvkJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwtvkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwtvkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtvk5pAEeOXzvVK2MY5wA" 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="_cwtvlJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvlppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwtvkJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvmZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwtvkJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvnJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwtvkJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvn5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwtvkJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvoppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwtvkJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvpZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwtvkJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvqJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwtvVZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtvqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtvq5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvrZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwtvrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtvr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtvsJpAEeOXzvVK2MY5wA" 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="_cwtvsZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtvs5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvtZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwtvtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtvt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtvuJpAEeOXzvVK2MY5wA" 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="_cwtvuZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtvu5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvvZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwtvtZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtvv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtvwJpAEeOXzvVK2MY5wA" 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="_cwtvwppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwtvtZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtvxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtvxZpAEeOXzvVK2MY5wA" 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="_cwtvx5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwtvkJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwtvyppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_JFByIBFOEeODGMc-klr1xw/125" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtvy5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwtv0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtvzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtvzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtvzppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtv0JpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwtv0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtv0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtv05pAEeOXzvVK2MY5wA" 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="_cwtv1JpAEeOXzvVK2MY5wA" 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="_cwtv1ppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwtv15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtv2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtv2ZpAEeOXzvVK2MY5wA" 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="_cwtv2ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwtv6JpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtv3JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtv3ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtv4JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwtv7JpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtv4ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtv5JpAEeOXzvVK2MY5wA" 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="_cwtv5ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtv6JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwtv6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtv6ppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwtv65pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwtv7JpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwtv7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwtv7ppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwtv75pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtv8JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwtv8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtv8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtv85pAEeOXzvVK2MY5wA" 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="_cwtv9JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtv9ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwtv8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtv95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtv-ZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwtv8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtv-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtv_JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwtv_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtv_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtv_5pAEeOXzvVK2MY5wA" 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="_cwtwAJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtwAppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwtv_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtwA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtwBZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwtv_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtwBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtwCJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwtv_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtwCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtwC5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwtwDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwtwDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtwDppAEeOXzvVK2MY5wA" 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="_cwtwD5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtwEZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwtwC5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtwEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtwFJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwtwC5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtwFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtwF5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwtwC5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtwGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtwGppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwtwC5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtwG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtwHZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwtwC5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtwHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtwIJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwtwC5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtwIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtwI5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwtv0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtwJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtwJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtwJppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtwKJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwtwKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtwKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtwK5pAEeOXzvVK2MY5wA" 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="_cwtwLJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtwLppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtwMJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwtwMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtwMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtwM5pAEeOXzvVK2MY5wA" 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="_cwtwNJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtwNppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtwOJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwtwMJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtwOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtwOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtwO5pAEeOXzvVK2MY5wA" 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="_cwtwPZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwtwMJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtwPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtwP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtwQJpAEeOXzvVK2MY5wA" 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="_cwtwQppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwtwC5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtwQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwtwRZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_ow7_sBFNEeODGMc-klr1xw/124" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtwRppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwtwS5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwtwR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtwSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtwSZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwtwS5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwtwTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtwTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtwTppAEeOXzvVK2MY5wA" 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="_cwtwT5pAEeOXzvVK2MY5wA" 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="_cwtwUZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwtwUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwtwU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwtwVJpAEeOXzvVK2MY5wA" 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="_cwtwVZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwuUUJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtwV5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtwWZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtwW5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwuUVJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwtwXZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwtwX5pAEeOXzvVK2MY5wA" 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="_cwtwYZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwuUUJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwuUUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwuUUppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwuUU5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwuUVJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwuUVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwuUVppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwuUV5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUWJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwuUWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuUWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuUW5pAEeOXzvVK2MY5wA" 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="_cwuUXJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUXppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwuUWJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuUX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUYZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwuUWJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuUYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUZJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwuUZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuUZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuUZ5pAEeOXzvVK2MY5wA" 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="_cwuUaJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUappAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwuUZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuUa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUbZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwuUZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuUbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUcJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwuUZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuUcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUc5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwuUdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwuUdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuUdppAEeOXzvVK2MY5wA" 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="_cwuUd5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUeZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwuUc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuUeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUfJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwuUc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuUfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUf5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwuUc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuUgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUgppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwuUc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuUg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUhZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwuUc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuUhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUiJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwuUc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuUiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUi5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwtwS5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuUjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuUjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuUjppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUkJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwuUkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuUkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuUk5pAEeOXzvVK2MY5wA" 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="_cwuUlJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuUlppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUmJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwuUmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuUmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuUm5pAEeOXzvVK2MY5wA" 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="_cwuUnJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwuUnppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUoJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwuUmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuUoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuUoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuUo5pAEeOXzvVK2MY5wA" 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="_cwuUpZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwuUmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuUpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuUp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuUqJpAEeOXzvVK2MY5wA" 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="_cwuUqppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwuUc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuUq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwuUrZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_MmNr0BFMEeODGMc-klr1xw/123" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUrppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwuUs5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuUr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuUsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuUsZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuUs5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwuUtJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuUtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuUtppAEeOXzvVK2MY5wA" 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="_cwuUt5pAEeOXzvVK2MY5wA" 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="_cwuUuZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwuUuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuUu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuUvJpAEeOXzvVK2MY5wA" 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="_cwuUvZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwuUy5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuUv5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuUwZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuUw5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwuUz5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuUxZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwuUx5pAEeOXzvVK2MY5wA" 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="_cwuUyZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwuUy5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwuUzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwuUzZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwuUzppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwuUz5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwuU0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwuU0ZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwuU0ppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuU05pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwuU1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuU1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuU1ppAEeOXzvVK2MY5wA" 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="_cwuU15pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuU2ZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwuU05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuU2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuU3JpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwuU05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuU3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuU35pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwuU4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuU4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuU4ppAEeOXzvVK2MY5wA" 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="_cwuU45pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuU5ZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwuU35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuU5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuU6JpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwuU35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuU6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuU65pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwuU35pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuU7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuU7ppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwuU75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwuU8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuU8ZpAEeOXzvVK2MY5wA" 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="_cwuU8ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuU9JpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwuU7ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuU9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuU95pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwuU7ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuU-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuU-ppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwuU7ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuU-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuU_ZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwuU7ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuU_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVAJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwuU7ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVA5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwuU7ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVBppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwuUs5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuVCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVCZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVC5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwuVDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuVDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVDppAEeOXzvVK2MY5wA" 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="_cwuVD5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuVEZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVE5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwuVFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuVFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVFppAEeOXzvVK2MY5wA" 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="_cwuVF5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwuVGZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVG5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwuVE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuVHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVHppAEeOXzvVK2MY5wA" 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="_cwuVIJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwuVE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuVIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVI5pAEeOXzvVK2MY5wA" 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="_cwuVJZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwuU7ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwuVKJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_wXnIEBFLEeODGMc-klr1xw/122" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVKZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwuVLppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuVK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVLJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVLppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwuVL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuVMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVMZpAEeOXzvVK2MY5wA" 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="_cwuVMppAEeOXzvVK2MY5wA" 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="_cwuVNJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwuVNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuVNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVN5pAEeOXzvVK2MY5wA" 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="_cwuVOJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwuVRppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuVOppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuVPJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuVPppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwuVSppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuVQJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwuVQppAEeOXzvVK2MY5wA" 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="_cwuVRJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwuVRppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwuVR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwuVSJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwuVSZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwuVSppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwuVS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwuVTJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwuVTZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVTppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwuVT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuVUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVUZpAEeOXzvVK2MY5wA" 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="_cwuVUppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVVJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwuVTppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVV5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwuVTppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVWppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwuVW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuVXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVXZpAEeOXzvVK2MY5wA" 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="_cwuVXppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVYJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwuVWppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVY5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwuVWppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVZppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwuVWppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVaZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwuVappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwuVa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVbJpAEeOXzvVK2MY5wA" 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="_cwuVbZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVb5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwuVaZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVcppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwuVaZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVdZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwuVaZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVeJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwuVaZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVe5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwuVaZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVfppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwuVaZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVgZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwuVLppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuVg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVhJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVhppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwuVh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuViJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuViZpAEeOXzvVK2MY5wA" 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="_cwuVippAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuVjJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVjppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwuVj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuVkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVkZpAEeOXzvVK2MY5wA" 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="_cwuVkppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwuVlJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVlppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwuVjppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuVmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVmZpAEeOXzvVK2MY5wA" 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="_cwuVm5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwuVjppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuVnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVnppAEeOXzvVK2MY5wA" 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="_cwuVoJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwuVaZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwuVo5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_cM8lkBFLEeODGMc-klr1xw/121" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVpJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwuVqZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuVpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuVpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVp5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVqZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwuVqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuVq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVrJpAEeOXzvVK2MY5wA" 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="_cwuVrZpAEeOXzvVK2MY5wA" 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="_cwuVr5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwuVsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuVsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVsppAEeOXzvVK2MY5wA" 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="_cwuVs5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwuVwZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuVtZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuVt5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuVuZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwuVxZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuVu5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwuVvZpAEeOXzvVK2MY5wA" 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="_cwuVv5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwuVwZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwuVwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwuVw5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwuVxJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwuVxZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwuVxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwuVx5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwuVyJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVyZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwuVyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuVy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuVzJpAEeOXzvVK2MY5wA" 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="_cwuVzZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuVz5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwuVyZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuV0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuV0ppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwuVyZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuV05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuV1ZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwuV1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuV15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuV2JpAEeOXzvVK2MY5wA" 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="_cwuV2ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuV25pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwuV1ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuV3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuV3ppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwuV1ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuV35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuV4ZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwuV1ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuV4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuV5JpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwuV5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwuV5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuV55pAEeOXzvVK2MY5wA" 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="_cwuV6JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuV6ppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwuV5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuV65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuV7ZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwuV5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuV7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuV8JpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwuV5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuV8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuV85pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwuV5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuV9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuV9ppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwuV5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuV95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuV-ZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwuV5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuV-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuV_JpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwuVqZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuV_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuV_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuV_5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWAZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwuWAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWBJpAEeOXzvVK2MY5wA" 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="_cwuWBZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuWB5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWCZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwuWCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWDJpAEeOXzvVK2MY5wA" 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="_cwuWDZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwuWD5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWEZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwuWCZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWFJpAEeOXzvVK2MY5wA" 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="_cwuWFppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwuWCZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWGZpAEeOXzvVK2MY5wA" 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="_cwuWG5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwuV5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwuWHppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_yqSKwBFKEeODGMc-klr1xw/120" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWH5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwuWJJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWIppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWJJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwuWJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWJ5pAEeOXzvVK2MY5wA" 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="_cwuWKJpAEeOXzvVK2MY5wA" 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="_cwuWKppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwuWK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWLZpAEeOXzvVK2MY5wA" 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="_cwuWLppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwuWPJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuWMJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuWMppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuWNJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwuWQJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuWNppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwuWOJpAEeOXzvVK2MY5wA" 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="_cwuWOppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwuWPJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwuWPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwuWPppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwuWP5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwuWQJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwuWQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwuWQppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwuWQ5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWRJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwuWRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWR5pAEeOXzvVK2MY5wA" 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="_cwuWSJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWSppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwuWRJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWTZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwuWRJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWUJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwuWUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWU5pAEeOXzvVK2MY5wA" 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="_cwuWVJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWVppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwuWUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWWZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwuWUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWXJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwuWUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWX5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwuWYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwuWYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWYppAEeOXzvVK2MY5wA" 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="_cwuWY5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWZZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwuWX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWaJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwuWX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWa5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwuWX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWbppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwuWX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWcZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwuWX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWdJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwuWX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWd5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwuWJJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWeppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWfJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwuWfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWf5pAEeOXzvVK2MY5wA" 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="_cwuWgJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuWgppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWhJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwuWhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWh5pAEeOXzvVK2MY5wA" 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="_cwuWiJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwuWippAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWjJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwuWhJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWj5pAEeOXzvVK2MY5wA" 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="_cwuWkZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwuWhJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWlJpAEeOXzvVK2MY5wA" 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="_cwuWlppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwuWX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwuWmZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_LPFywBFKEeODGMc-klr1xw/119" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWmppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwuWn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWnZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWn5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwuWoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWoppAEeOXzvVK2MY5wA" 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="_cwuWo5pAEeOXzvVK2MY5wA" 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="_cwuWpZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwuWpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWqJpAEeOXzvVK2MY5wA" 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="_cwuWqZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwuWt5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuWq5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuWrZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuWr5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwuWu5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuWsZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwuWs5pAEeOXzvVK2MY5wA" 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="_cwuWtZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwuWt5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwuWuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwuWuZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwuWuppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwuWu5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwuWvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwuWvZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwuWvppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWv5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwuWwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWwppAEeOXzvVK2MY5wA" 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="_cwuWw5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWxZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwuWv5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWyJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwuWv5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuWyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuWy5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwuWzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuWzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuWzppAEeOXzvVK2MY5wA" 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="_cwuWz5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuW0ZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwuWy5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuW0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuW1JpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwuWy5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuW1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuW15pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwuWy5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuW2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuW2ppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwuW25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwuW3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuW3ZpAEeOXzvVK2MY5wA" 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="_cwuW3ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuW4JpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwuW2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuW4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuW45pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwuW2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuW5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuW5ppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwuW2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuW55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuW6ZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwuW2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuW6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuW7JpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwuW2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuW7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuW75pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwuW2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuW8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuW8ppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwuWn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuW85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuW9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuW9ZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuW95pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwuW-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuW-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuW-ppAEeOXzvVK2MY5wA" 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="_cwuW-5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuW_ZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuW_5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwuXAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuXAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuXAppAEeOXzvVK2MY5wA" 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="_cwuXA5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwuXBZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXB5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwuW_5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuXCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuXCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuXCppAEeOXzvVK2MY5wA" 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="_cwuXDJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwuW_5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuXDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuXDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuXD5pAEeOXzvVK2MY5wA" 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="_cwuXEZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwuW2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuXEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwuXFJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_3S94ABFIEeODGMc-klr1xw/118" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXFZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwuXGppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuXFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuXF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuXGJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXGppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwuXG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuXHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuXHZpAEeOXzvVK2MY5wA" 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="_cwuXHppAEeOXzvVK2MY5wA" 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="_cwuXIJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwuXIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuXIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuXI5pAEeOXzvVK2MY5wA" 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="_cwuXJJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwuXMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuXJppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuXKJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuXKppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwuXNppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuXLJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwuXLppAEeOXzvVK2MY5wA" 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="_cwuXMJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwuXMppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwuXM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwuXNJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwuXNZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwuXNppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwuXN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwuXOJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwuXOZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXOppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwuXO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuXPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuXPZpAEeOXzvVK2MY5wA" 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="_cwuXPppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXQJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwuXOppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuXQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXQ5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwuXOppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuXRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXRppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwuXR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuXSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuXSZpAEeOXzvVK2MY5wA" 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="_cwuXSppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXTJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwuXRppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuXTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXT5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwuXRppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuXUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXUppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwuXRppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuXU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXVZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwuXVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwuXV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuXWJpAEeOXzvVK2MY5wA" 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="_cwuXWZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXW5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwuXVZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuXXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXXppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwuXVZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuXX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXYZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwuXVZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuXYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXZJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwuXVZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuXZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXZ5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwuXVZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuXaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXappAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwuXVZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuXa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXbZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwuXGppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuXbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuXb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuXcJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXcppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwuXc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuXdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuXdZpAEeOXzvVK2MY5wA" 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="_cwuXdppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwuXeJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXeppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwuXe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuXfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuXfZpAEeOXzvVK2MY5wA" 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="_cwuXfppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwuXgJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwuXgppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwuXeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwuXg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwuXhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwuXhZpAEeOXzvVK2MY5wA" 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="_cwu7YZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwuXeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu7YppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu7Y5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu7ZJpAEeOXzvVK2MY5wA" 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="_cwu7ZppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwuXVZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu7Z5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwu7aZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_ua7gUBFIEeODGMc-klr1xw/117" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7appAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwu7b5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu7a5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu7bJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu7bZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7b5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwu7cJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu7cZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu7cppAEeOXzvVK2MY5wA" 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="_cwu7c5pAEeOXzvVK2MY5wA" 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="_cwu7dZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwu7dppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu7d5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu7eJpAEeOXzvVK2MY5wA" 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="_cwu7eZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwu7h5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu7e5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu7fZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu7f5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwu7i5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu7gZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwu7g5pAEeOXzvVK2MY5wA" 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="_cwu7hZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwu7h5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwu7iJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwu7iZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwu7ippAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwu7i5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwu7jJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwu7jZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwu7jppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7j5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwu7kJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu7kZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu7kppAEeOXzvVK2MY5wA" 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="_cwu7k5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7lZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwu7j5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu7lppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7mJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwu7j5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu7mZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7m5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwu7nJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu7nZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu7nppAEeOXzvVK2MY5wA" 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="_cwu7n5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7oZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwu7m5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu7oppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7pJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwu7m5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu7pZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7p5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwu7m5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu7qJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7qppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwu7q5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwu7rJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu7rZpAEeOXzvVK2MY5wA" 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="_cwu7rppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7sJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwu7qppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu7sZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7s5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwu7qppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu7tJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7tppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwu7qppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu7t5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7uZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwu7qppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu7uppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7vJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwu7qppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu7vZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7v5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwu7qppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu7wJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7wppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwu7b5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu7w5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu7xJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu7xZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7x5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwu7yJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu7yZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu7yppAEeOXzvVK2MY5wA" 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="_cwu7y5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu7zZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu7z5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwu70JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu70ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu70ppAEeOXzvVK2MY5wA" 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="_cwu705pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwu71ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu715pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwu7z5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu72JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu72ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu72ppAEeOXzvVK2MY5wA" 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="_cwu73JpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwu7z5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu73ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu73ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu735pAEeOXzvVK2MY5wA" 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="_cwu74ZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwu7qppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu74ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwu75JpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_mB5_4BFIEeODGMc-klr1xw/116" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu75ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwu76ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu75ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu755pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu76JpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu76ppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwu765pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu77JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu77ZpAEeOXzvVK2MY5wA" 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="_cwu77ppAEeOXzvVK2MY5wA" 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="_cwu78JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwu78ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu78ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu785pAEeOXzvVK2MY5wA" 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="_cwu79JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwu8AppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu79ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu7-JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu7-ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwu8BppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu7_JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwu7_ppAEeOXzvVK2MY5wA" 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="_cwu8AJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwu8AppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwu8A5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwu8BJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwu8BZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwu8BppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwu8B5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwu8CJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwu8CZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8CppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwu8C5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu8DJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu8DZpAEeOXzvVK2MY5wA" 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="_cwu8DppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8EJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwu8CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8EZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8E5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwu8CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8FJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8FppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwu8F5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu8GJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu8GZpAEeOXzvVK2MY5wA" 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="_cwu8GppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8HJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwu8FppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8HZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8H5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwu8FppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8IJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8IppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwu8FppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8I5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8JZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwu8JppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwu8J5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu8KJpAEeOXzvVK2MY5wA" 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="_cwu8KZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8K5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwu8JZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8LJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8LppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwu8JZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8L5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8MZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwu8JZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8MppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8NJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwu8JZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8NZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8N5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwu8JZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8OJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8OppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwu8JZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8O5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8PZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwu76ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8PppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu8P5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu8QJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8QppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwu8Q5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu8RJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu8RZpAEeOXzvVK2MY5wA" 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="_cwu8RppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu8SJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8SppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwu8S5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu8TJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu8TZpAEeOXzvVK2MY5wA" 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="_cwu8TppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwu8UJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8UppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwu8SppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8U5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu8VJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu8VZpAEeOXzvVK2MY5wA" 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="_cwu8V5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwu8SppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8WJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu8WZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu8WppAEeOXzvVK2MY5wA" 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="_cwu8XJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwu8JZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8XZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwu8X5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_MbZfwBFIEeODGMc-klr1xw/115" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8YJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwu8ZZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8YZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu8YppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu8Y5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8ZZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwu8ZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu8Z5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu8aJpAEeOXzvVK2MY5wA" 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="_cwu8aZpAEeOXzvVK2MY5wA" 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="_cwu8a5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwu8bJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu8bZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu8bppAEeOXzvVK2MY5wA" 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="_cwu8b5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwu8fZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu8cZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu8c5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu8dZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwu8gZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu8d5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwu8eZpAEeOXzvVK2MY5wA" 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="_cwu8e5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwu8fZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwu8fppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwu8f5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwu8gJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwu8gZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwu8gppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwu8g5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwu8hJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8hZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwu8hppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu8h5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu8iJpAEeOXzvVK2MY5wA" 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="_cwu8iZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8i5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwu8hZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8jJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8jppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwu8hZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8j5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8kZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwu8kppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu8k5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu8lJpAEeOXzvVK2MY5wA" 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="_cwu8lZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8l5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwu8kZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8mJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8mppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwu8kZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8m5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8nZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwu8kZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8nppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu8n5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu8oJpAEeOXzvVK2MY5wA" 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="_cwu8oppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwu8o5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwu8pJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu8pZpAEeOXzvVK2MY5wA" 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="_cwu8pppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8qJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwu8oppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8qZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8q5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwu8oppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8rJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8rppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwu8oppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8r5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8sZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwu8oppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8sppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8tJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwu8oppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8tZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8t5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwu8oppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8uJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8uppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwu8ZZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu8u5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu8vJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu8vZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8v5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwu8wJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu8wZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu8wppAEeOXzvVK2MY5wA" 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="_cwu8w5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu8xZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8x5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwu8yJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu8yZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu8yppAEeOXzvVK2MY5wA" 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="_cwu8y5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwu8zZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu8z5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwu8x5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu80JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu80ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu80ppAEeOXzvVK2MY5wA" 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="_cwu81JpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwu8x5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu81ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu81ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu815pAEeOXzvVK2MY5wA" 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="_cwu82ZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwu8oppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu82ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwu83JpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_4J4HUBFHEeODGMc-klr1xw/114" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu83ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwu84ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu83ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu835pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu84JpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu84ppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwu845pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu85JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu85ZpAEeOXzvVK2MY5wA" 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="_cwu85ppAEeOXzvVK2MY5wA" 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="_cwu86JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwu86ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu86ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu865pAEeOXzvVK2MY5wA" 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="_cwu87JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwu8-ppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu87ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu88JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu88ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwu8_ppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu89JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwu89ppAEeOXzvVK2MY5wA" 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="_cwu8-JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwu8-ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwu8-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwu8_JpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwu8_ZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwu8_ppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwu8_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwu9AJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwu9AZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9AppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwu9A5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9BJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9BZpAEeOXzvVK2MY5wA" 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="_cwu9BppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9CJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwu9AppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9CZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9C5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwu9AppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9DJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9DppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwu9D5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9EJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9EZpAEeOXzvVK2MY5wA" 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="_cwu9EppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9FJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwu9DppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9FZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9F5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwu9DppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9GJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9GppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwu9DppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9G5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9HJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9HZpAEeOXzvVK2MY5wA" 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="_cwu9H5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwu9IJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwu9IZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9IppAEeOXzvVK2MY5wA" 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="_cwu9I5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9JZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwu9H5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9JppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9KJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwu9H5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9KZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9K5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwu9H5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9LJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9LppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwu9H5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9L5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9MZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwu9H5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9MppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9NJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwu9H5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9NZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9N5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwu84ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9OJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9OZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9OppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9PJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwu9PZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9PppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9P5pAEeOXzvVK2MY5wA" 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="_cwu9QJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu9QppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9RJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwu9RZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9RppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9R5pAEeOXzvVK2MY5wA" 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="_cwu9SJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwu9SppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9TJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwu9RJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9TZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9TppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9T5pAEeOXzvVK2MY5wA" 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="_cwu9UZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwu9RJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9UppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9U5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9VJpAEeOXzvVK2MY5wA" 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="_cwu9VppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwu9H5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9V5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwu9WZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_sUP9IBFHEeODGMc-klr1xw/113" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9WppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwu9X5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9W5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9XJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9XZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9X5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwu9YJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9YZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9YppAEeOXzvVK2MY5wA" 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="_cwu9Y5pAEeOXzvVK2MY5wA" 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="_cwu9ZZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwu9ZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9Z5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9aJpAEeOXzvVK2MY5wA" 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="_cwu9aZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwu9d5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu9a5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu9bZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu9b5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwu9e5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu9cZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwu9c5pAEeOXzvVK2MY5wA" 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="_cwu9dZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwu9d5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwu9eJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwu9eZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwu9eppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwu9e5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwu9fJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwu9fZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwu9fppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9f5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwu9gJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9gZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9gppAEeOXzvVK2MY5wA" 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="_cwu9g5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9hZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwu9f5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9hppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9iJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwu9f5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9iZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9i5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwu9jJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9jZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9jppAEeOXzvVK2MY5wA" 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="_cwu9j5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9kZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwu9i5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9kppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9lJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwu9i5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9lZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9l5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwu9i5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9mJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9mZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9mppAEeOXzvVK2MY5wA" 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="_cwu9nJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwu9nZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwu9nppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9n5pAEeOXzvVK2MY5wA" 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="_cwu9oJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9oppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwu9nJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9o5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9pZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwu9nJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9pppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9qJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwu9nJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9qZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9q5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwu9nJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9rJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9rppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwu9nJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9r5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9sZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwu9nJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9sppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9tJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwu9X5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9tZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9tppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9t5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9uZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwu9uppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9u5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9vJpAEeOXzvVK2MY5wA" 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="_cwu9vZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu9v5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9wZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwu9wppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9w5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9xJpAEeOXzvVK2MY5wA" 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="_cwu9xZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwu9x5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9yZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwu9wZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9yppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9y5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9zJpAEeOXzvVK2MY5wA" 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="_cwu9zppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwu9wZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu9z5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu90JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu90ZpAEeOXzvVK2MY5wA" 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="_cwu905pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwu9nJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu91JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwu91ppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_rAF1wBDHEeOsaJcHDk5fxQ/112" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu915pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwu93JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu92JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu92ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu92ppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu93JpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwu93ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu93ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu935pAEeOXzvVK2MY5wA" 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="_cwu94JpAEeOXzvVK2MY5wA" 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="_cwu94ppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwu945pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu95JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu95ZpAEeOXzvVK2MY5wA" 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="_cwu95ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwu99JpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu96JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu96ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu97JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwu9-JpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu97ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwu98JpAEeOXzvVK2MY5wA" 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="_cwu98ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwu99JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwu99ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwu99ppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwu995pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwu9-JpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwu9-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwu9-ppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwu9-5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu9_JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwu9_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu9_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu9_5pAEeOXzvVK2MY5wA" 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="_cwu-AJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-AppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwu9_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-A5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-BZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwu9_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-BppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-CJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwu-CZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu-CppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu-C5pAEeOXzvVK2MY5wA" 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="_cwu-DJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-DppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwu-CJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-D5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-EZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwu-CJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-EppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-FJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwu-CJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-FZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-F5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwu-GJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwu-GZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu-GppAEeOXzvVK2MY5wA" 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="_cwu-G5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-HZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwu-F5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-HppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-IJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwu-F5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-IZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-I5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwu-F5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-JJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-JppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwu-F5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-J5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-KZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwu-F5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-KppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-LJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwu-F5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-LZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-L5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwu93JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-MJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu-MZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu-MppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-NJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwu-NZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu-NppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu-N5pAEeOXzvVK2MY5wA" 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="_cwu-OJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu-OppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-PJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwu-PZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu-PppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu-P5pAEeOXzvVK2MY5wA" 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="_cwu-QJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwu-QppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-RJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwu-PJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-RZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu-RppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu-R5pAEeOXzvVK2MY5wA" 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="_cwu-SZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwu-PJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-SppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu-S5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu-TJpAEeOXzvVK2MY5wA" 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="_cwu-TppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwu-F5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-T5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwu-UZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_0fTXoBDGEeOsaJcHDk5fxQ/111" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-UppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwu-V5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-U5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu-VJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu-VZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-V5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwu-WJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu-WZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu-WppAEeOXzvVK2MY5wA" 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="_cwu-W5pAEeOXzvVK2MY5wA" 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="_cwu-XZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwu-XppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu-X5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu-YJpAEeOXzvVK2MY5wA" 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="_cwu-YZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwu-b5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu-Y5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu-ZZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu-Z5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwu-c5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu-aZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwu-a5pAEeOXzvVK2MY5wA" 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="_cwu-bZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwu-b5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwu-cJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwu-cZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwu-cppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwu-c5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwu-dJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwu-dZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwu-dppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-d5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwu-eJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu-eZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu-eppAEeOXzvVK2MY5wA" 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="_cwu-e5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-fZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwu-d5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-fppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-gJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwu-d5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-gZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-g5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwu-hJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu-hZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu-hppAEeOXzvVK2MY5wA" 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="_cwu-h5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-iZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwu-g5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-ippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-jJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwu-g5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-jZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-j5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwu-g5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-kJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-kppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwu-k5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwu-lJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu-lZpAEeOXzvVK2MY5wA" 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="_cwu-lppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-mJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwu-kppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-mZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-m5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwu-kppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-nJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-nppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwu-kppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-n5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-oZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwu-kppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-oppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-pJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwu-kppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-pZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-p5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwu-kppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-qJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-qppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwu-V5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-q5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu-rJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu-rZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-r5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwu-sJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu-sZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu-sppAEeOXzvVK2MY5wA" 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="_cwu-s5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwu-tZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-t5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwu-uJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu-uZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwu-uppAEeOXzvVK2MY5wA" 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="_cwu-u5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwu-vZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwu-v5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwu-t5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwu-wJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwu-wZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvicJpAEeOXzvVK2MY5wA" 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="_cwvicppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwu-t5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvic5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvidJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvidZpAEeOXzvVK2MY5wA" 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="_cwvid5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwu-kppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvieJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwvieppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_qvVSYBDGEeOsaJcHDk5fxQ/110" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvie5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwvigJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvifJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvifZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvifppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvigJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwvigZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvigppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvig5pAEeOXzvVK2MY5wA" 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="_cwvihJpAEeOXzvVK2MY5wA" 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="_cwvihppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwvih5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwviiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwviiZpAEeOXzvVK2MY5wA" 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="_cwviippAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwvimJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvijJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvijppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvikJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwvinJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvikppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwvilJpAEeOXzvVK2MY5wA" 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="_cwvilppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwvimJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwvimZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwvimppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwvim5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwvinJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwvinZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwvinppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwvin5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvioJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwvioZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvioppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvio5pAEeOXzvVK2MY5wA" 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="_cwvipJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvipppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwvioJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvip5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwviqZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwvioJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwviqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvirJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwvirZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvirppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvir5pAEeOXzvVK2MY5wA" 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="_cwvisJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvisppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwvirJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvis5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvitZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwvirJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvitppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwviuJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwvirJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwviuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwviu5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwvivJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwvivZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvivppAEeOXzvVK2MY5wA" 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="_cwviv5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwviwZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwviu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwviwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvixJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwviu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvixZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvix5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwviu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwviyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwviyppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwviu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwviy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvizZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwviu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvizppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvi0JpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwviu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvi0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvi05pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwvigJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvi1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvi1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvi1ppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvi2JpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwvi2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvi2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvi25pAEeOXzvVK2MY5wA" 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="_cwvi3JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvi3ppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvi4JpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwvi4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvi4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvi45pAEeOXzvVK2MY5wA" 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="_cwvi5JpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwvi5ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvi6JpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwvi4JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvi6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvi6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvi65pAEeOXzvVK2MY5wA" 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="_cwvi7ZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwvi4JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvi7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvi75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvi8JpAEeOXzvVK2MY5wA" 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="_cwvi8ppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwviu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvi85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwvi9ZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_MZpGUBDGEeOsaJcHDk5fxQ/109" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvi9ppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwvi-5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvi95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvi-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvi-ZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvi-5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwvi_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvi_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvi_ppAEeOXzvVK2MY5wA" 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="_cwvi_5pAEeOXzvVK2MY5wA" 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="_cwvjAZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwvjAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvjA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvjBJpAEeOXzvVK2MY5wA" 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="_cwvjBZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwvjE5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvjB5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvjCZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvjC5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwvjF5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvjDZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwvjD5pAEeOXzvVK2MY5wA" 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="_cwvjEZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwvjE5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwvjFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwvjFZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwvjFppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwvjF5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwvjGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwvjGZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwvjGppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjG5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwvjHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvjHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvjHppAEeOXzvVK2MY5wA" 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="_cwvjH5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjIZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwvjG5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjJJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwvjG5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjJ5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwvjKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvjKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvjKppAEeOXzvVK2MY5wA" 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="_cwvjK5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjLZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwvjJ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjMJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwvjJ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjM5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwvjJ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjNppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwvjN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwvjOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvjOZpAEeOXzvVK2MY5wA" 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="_cwvjOppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjPJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwvjNppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjP5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwvjNppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjQppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwvjNppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjRZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwvjNppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjSJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwvjNppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjS5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwvjNppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjTppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwvi-5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvjUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvjUZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjU5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwvjVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvjVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvjVppAEeOXzvVK2MY5wA" 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="_cwvjV5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvjWZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjW5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwvjXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvjXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvjXppAEeOXzvVK2MY5wA" 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="_cwvjX5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwvjYZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjY5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwvjW5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvjZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvjZppAEeOXzvVK2MY5wA" 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="_cwvjaJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwvjW5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvjappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvja5pAEeOXzvVK2MY5wA" 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="_cwvjbZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwvjNppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwvjcJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_6YIosBDFEeOsaJcHDk5fxQ/108" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjcZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwvjdppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvjc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvjdJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjdppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwvjd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvjeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvjeZpAEeOXzvVK2MY5wA" 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="_cwvjeppAEeOXzvVK2MY5wA" 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="_cwvjfJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwvjfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvjfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvjf5pAEeOXzvVK2MY5wA" 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="_cwvjgJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwvjjppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvjgppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvjhJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvjhppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwvjkppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvjiJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwvjippAEeOXzvVK2MY5wA" 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="_cwvjjJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwvjjppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwvjj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwvjkJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwvjkZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwvjkppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwvjk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwvjlJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwvjlZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjlppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwvjl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvjmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvjmZpAEeOXzvVK2MY5wA" 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="_cwvjmppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjnJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwvjlppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjn5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwvjlppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjoppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwvjo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvjpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvjpZpAEeOXzvVK2MY5wA" 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="_cwvjpppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjqJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwvjoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjq5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwvjoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjrppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwvjoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjsZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwvjsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwvjs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvjtJpAEeOXzvVK2MY5wA" 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="_cwvjtZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjt5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwvjsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjuppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwvjsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvju5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjvZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwvjsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjwJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwvjsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjw5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwvjsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjxppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwvjsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjyZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwvjdppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvjyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvjy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvjzJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvjzppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwvjz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvj0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvj0ZpAEeOXzvVK2MY5wA" 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="_cwvj0ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvj1JpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvj1ppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwvj15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvj2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvj2ZpAEeOXzvVK2MY5wA" 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="_cwvj2ppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwvj3JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvj3ppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwvj1ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvj35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvj4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvj4ZpAEeOXzvVK2MY5wA" 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="_cwvj45pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwvj1ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvj5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvj5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvj5ppAEeOXzvVK2MY5wA" 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="_cwvj6JpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwvjsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvj6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwvj65pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_epSjEBDFEeOsaJcHDk5fxQ/107" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvj7JpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwvj8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvj7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvj7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvj75pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvj8ZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwvj8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvj85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvj9JpAEeOXzvVK2MY5wA" 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="_cwvj9ZpAEeOXzvVK2MY5wA" 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="_cwvj95pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwvj-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvj-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvj-ppAEeOXzvVK2MY5wA" 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="_cwvj-5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwvkCZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvj_ZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvj_5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvkAZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwvkDZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvkA5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwvkBZpAEeOXzvVK2MY5wA" 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="_cwvkB5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwvkCZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwvkCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwvkC5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwvkDJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwvkDZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwvkDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwvkD5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwvkEJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkEZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwvkEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvkE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvkFJpAEeOXzvVK2MY5wA" 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="_cwvkFZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkF5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwvkEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkGppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwvkEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkHZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwvkHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvkH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvkIJpAEeOXzvVK2MY5wA" 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="_cwvkIZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkI5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwvkHZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkJppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwvkHZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkKZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwvkHZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkLJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwvkLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwvkLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvkL5pAEeOXzvVK2MY5wA" 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="_cwvkMJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkMppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwvkLJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkNZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwvkLJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkOJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwvkLJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkO5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwvkLJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkPppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwvkLJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkQZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwvkLJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkRJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwvj8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvkRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvkR5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkSZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwvkSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvkS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvkTJpAEeOXzvVK2MY5wA" 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="_cwvkTZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvkT5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkUZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwvkUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvkU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvkVJpAEeOXzvVK2MY5wA" 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="_cwvkVZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwvkV5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkWZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwvkUZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvkW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvkXJpAEeOXzvVK2MY5wA" 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="_cwvkXppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwvkUZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvkYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvkYZpAEeOXzvVK2MY5wA" 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="_cwvkY5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwvkLJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwvkZppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_pC_-UBDEEeOsaJcHDk5fxQ/106" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkZ5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwvkbJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvkaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvkappAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkbJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwvkbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvkbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvkb5pAEeOXzvVK2MY5wA" 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="_cwvkcJpAEeOXzvVK2MY5wA" 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="_cwvkcppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwvkc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvkdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvkdZpAEeOXzvVK2MY5wA" 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="_cwvkdppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwvkhJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvkeJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvkeppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvkfJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwvkiJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvkfppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwvkgJpAEeOXzvVK2MY5wA" 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="_cwvkgppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwvkhJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwvkhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwvkhppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwvkh5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwvkiJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwvkiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwvkippAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwvki5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkjJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwvkjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvkjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvkj5pAEeOXzvVK2MY5wA" 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="_cwvkkJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkkppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwvkjJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvklZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwvkjJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvklppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkmJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwvkmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvkmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvkm5pAEeOXzvVK2MY5wA" 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="_cwvknJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvknppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwvkmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkoZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwvkmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkpJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwvkmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkp5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwvkqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwvkqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvkqppAEeOXzvVK2MY5wA" 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="_cwvkq5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkrZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwvkp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvksJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwvkp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvksZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvks5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwvkp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvktJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvktppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwvkp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkuZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwvkp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkvJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwvkp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkv5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwvkbJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvkwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvkwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvkwppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkxJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwvkxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvkxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvkx5pAEeOXzvVK2MY5wA" 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="_cwvkyJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvkyppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvkzJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwvkzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvkzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvkz5pAEeOXzvVK2MY5wA" 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="_cwvk0JpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwvk0ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvk1JpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwvkzJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvk1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvk1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvk15pAEeOXzvVK2MY5wA" 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="_cwvk2ZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwvkzJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvk2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvk25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvk3JpAEeOXzvVK2MY5wA" 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="_cwvk3ppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwvkp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvk35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwvk4ZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_kD7cQBDEEeOsaJcHDk5fxQ/105" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvk4ppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwvk55pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvk45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvk5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvk5ZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvk55pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwvk6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvk6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvk6ppAEeOXzvVK2MY5wA" 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="_cwvk65pAEeOXzvVK2MY5wA" 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="_cwvk7ZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwvk7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvk75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvk8JpAEeOXzvVK2MY5wA" 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="_cwvk8ZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwvk_5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvk85pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvk9ZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvk95pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwvlA5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvk-ZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwvk-5pAEeOXzvVK2MY5wA" 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="_cwvk_ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwvk_5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwvlAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwvlAZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwvlAppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwvlA5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwvlBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwvlBZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwvlBppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlB5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwvlCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvlCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvlCppAEeOXzvVK2MY5wA" 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="_cwvlC5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlDZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwvlB5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlEJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwvlB5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlE5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwvlFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvlFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvlFppAEeOXzvVK2MY5wA" 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="_cwvlF5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlGZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwvlE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlHJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwvlE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlH5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwvlE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlIppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwvlI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwvlJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvlJZpAEeOXzvVK2MY5wA" 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="_cwvlJppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlKJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwvlIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlK5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwvlIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlLppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwvlIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlMZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwvlIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlNJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwvlIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlN5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwvlIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlOppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwvk55pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvlPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvlPZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlP5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwvlQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvlQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvlQppAEeOXzvVK2MY5wA" key="documentation" value="true&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;"/>
          </eAnnotations>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwvlQ5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvlRZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlR5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwvlSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvlSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvlSppAEeOXzvVK2MY5wA" 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="_cwvlS5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwvlTZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlT5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwvlR5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvlUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvlUppAEeOXzvVK2MY5wA" 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="_cwvlVJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwvlR5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvlVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvlV5pAEeOXzvVK2MY5wA" 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="_cwvlWZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwvlIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwvlXJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_sz6goBDDEeOsaJcHDk5fxQ/104" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlXZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwvlYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvlX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvlYJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlYppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwvlY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvlZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvlZZpAEeOXzvVK2MY5wA" 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="_cwvlZppAEeOXzvVK2MY5wA" 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="_cwvlaJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwvlaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvlappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvla5pAEeOXzvVK2MY5wA" 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="_cwvlbJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwvleppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvlbppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvlcJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvlcppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwvlfppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwvldJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwvldppAEeOXzvVK2MY5wA" 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="_cwvleJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwvleppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwvle5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwvlfJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwvlfZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwvlfppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwvlf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwvlgJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwvlgZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlgppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwvlg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvlhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvlhZpAEeOXzvVK2MY5wA" 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="_cwvlhppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvliJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwvlgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvliZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvli5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwvlgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvljJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvljppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwvlj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwvlkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvlkZpAEeOXzvVK2MY5wA" 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="_cwvlkppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvllJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwvljppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvllZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvll5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwvljppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlmppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwvljppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlnZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwvlnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwvln5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwvloJpAEeOXzvVK2MY5wA" 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="_cwvloZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlo5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwvlnZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlpppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwvlnZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwvlqZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwvlnZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwvlqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJgZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwvlnZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwJgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJhJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwvlnZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwJhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJh5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwvlnZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwJiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJippAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwvlYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwJi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwJjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwJjZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJj5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwwJkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwJkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwJkppAEeOXzvVK2MY5wA" 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="_cwwJk5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwJlZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJl5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwwJmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwJmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwJmppAEeOXzvVK2MY5wA" 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="_cwwJm5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwJnZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJn5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwwJl5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwJoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwJoZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwJoppAEeOXzvVK2MY5wA" 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="_cwwJpJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwwJl5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwJpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwJpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwJp5pAEeOXzvVK2MY5wA" 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="_cwwJqZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwvlnZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwJqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwwJrJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_UvvV8BDDEeOsaJcHDk5fxQ/103" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJrZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwwJsppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwJrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwJr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwJsJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJsppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwwJs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwJtJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwJtZpAEeOXzvVK2MY5wA" 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="_cwwJtppAEeOXzvVK2MY5wA" 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="_cwwJuJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwwJuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwJuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwJu5pAEeOXzvVK2MY5wA" 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="_cwwJvJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwwJyppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwJvppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwJwJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwJwppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwwJzppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwJxJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwJxppAEeOXzvVK2MY5wA" 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="_cwwJyJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwJyppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwwJy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwJzJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwwJzZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwJzppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwwJz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwJ0JpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwwJ0ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJ0ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwwJ05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwJ1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwJ1ZpAEeOXzvVK2MY5wA" 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="_cwwJ1ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJ2JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwwJ0ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwJ2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJ25pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwwJ0ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwJ3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJ3ppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwwJ35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwJ4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwJ4ZpAEeOXzvVK2MY5wA" 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="_cwwJ4ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJ5JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwwJ3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwJ5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJ55pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwwJ3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwJ6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJ6ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwwJ3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwJ65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJ7ZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwwJ7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwwJ75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwJ8JpAEeOXzvVK2MY5wA" 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="_cwwJ8ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJ85pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwwJ7ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwJ9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJ9ppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwwJ7ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwJ95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJ-ZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwwJ7ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwJ-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJ_JpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwwJ7ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwJ_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwJ_5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwwJ7ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKAppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwwJ7ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKBZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwwJsppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKCJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKCppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwwKC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKDZpAEeOXzvVK2MY5wA" 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="_cwwKDppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwKEJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKEppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwwKE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKFZpAEeOXzvVK2MY5wA" 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="_cwwKFppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwKGJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKGppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwwKEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKHZpAEeOXzvVK2MY5wA" 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="_cwwKH5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwwKEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKIppAEeOXzvVK2MY5wA" 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="_cwwKJJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwwJ7ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwwKJ5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_mJcLUBCEEeOsaJcHDk5fxQ/102" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKKJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwwKLZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKK5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKLZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwwKLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKMJpAEeOXzvVK2MY5wA" 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="_cwwKMZpAEeOXzvVK2MY5wA" 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="_cwwKM5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwwKNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKNppAEeOXzvVK2MY5wA" 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="_cwwKN5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwwKRZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwKOZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwKO5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwKPZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwwKSZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwKP5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwKQZpAEeOXzvVK2MY5wA" 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="_cwwKQ5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwKRZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwwKRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwKR5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwwKSJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwKSZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwwKSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwKS5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwwKTJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKTZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwwKTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKUJpAEeOXzvVK2MY5wA" 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="_cwwKUZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKU5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwwKTZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKVppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwwKTZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKWZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwwKWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKXJpAEeOXzvVK2MY5wA" 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="_cwwKXZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKX5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwwKWZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKYppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwwKWZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKZZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwwKWZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKaJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwwKaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwwKappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKa5pAEeOXzvVK2MY5wA" 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="_cwwKbJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKbppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwwKaJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKcZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwwKaJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKdJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwwKaJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKd5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwwKaJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKeppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwwKaJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKfZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwwKaJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKgJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwwKLZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKg5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKhZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwwKhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKiJpAEeOXzvVK2MY5wA" 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="_cwwKiZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwKi5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKjZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwwKjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKkJpAEeOXzvVK2MY5wA" 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="_cwwKkZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwKk5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKlZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwwKjZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKmJpAEeOXzvVK2MY5wA" 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="_cwwKmppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwwKjZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKnZpAEeOXzvVK2MY5wA" 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="_cwwKn5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwwKaJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwwKoppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_K_kNQBB_EeOsaJcHDk5fxQ/101" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKo5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwwKqJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKpppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKqJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwwKqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKq5pAEeOXzvVK2MY5wA" 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="_cwwKrJpAEeOXzvVK2MY5wA" 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="_cwwKrppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwwKr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKsZpAEeOXzvVK2MY5wA" 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="_cwwKsppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwwKwJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwKtJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwKtppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwKuJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwwKxJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwKuppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwKvJpAEeOXzvVK2MY5wA" 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="_cwwKvppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwKwJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwwKwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwKwppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwwKw5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwKxJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwwKxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwKxppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwwKx5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKyJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwwKyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwKyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwKy5pAEeOXzvVK2MY5wA" 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="_cwwKzJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwKzppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwwKyJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwKz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwK0ZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwwKyJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwK0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwK1JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwwK1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwK1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwK15pAEeOXzvVK2MY5wA" 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="_cwwK2JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwK2ppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwwK1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwK25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwK3ZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwwK1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwK3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwK4JpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwwK1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwK4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwK45pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwwK5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwwK5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwK5ppAEeOXzvVK2MY5wA" 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="_cwwK55pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwK6ZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwwK45pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwK6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwK7JpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwwK45pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwK7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwK75pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwwK45pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwK8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwK8ppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwwK45pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwK85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwK9ZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwwK45pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwK9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwK-JpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwwK45pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwK-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwK-5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwwKqJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwK_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwK_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwK_ppAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLAJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwwLAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLA5pAEeOXzvVK2MY5wA" 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="_cwwLBJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwLBppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLCJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwwLCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLC5pAEeOXzvVK2MY5wA" 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="_cwwLDJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwLDppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLEJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwwLCJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLE5pAEeOXzvVK2MY5wA" 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="_cwwLFZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwwLCJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLGJpAEeOXzvVK2MY5wA" 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="_cwwLGppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwwK45pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwwLHZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_DrY1ABB_EeOsaJcHDk5fxQ/100" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLHppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwwLI5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLIZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLI5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwwLJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLJppAEeOXzvVK2MY5wA" 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="_cwwLJ5pAEeOXzvVK2MY5wA" 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="_cwwLKZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwwLKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLLJpAEeOXzvVK2MY5wA" 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="_cwwLLZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwwLO5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwLL5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwLMZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwLM5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwwLP5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwLNZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwLN5pAEeOXzvVK2MY5wA" 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="_cwwLOZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwLO5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwwLPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwLPZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwwLPppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwLP5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwwLQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwLQZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwwLQppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLQ5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwwLRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLRppAEeOXzvVK2MY5wA" 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="_cwwLR5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLSZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwwLQ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLTJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwwLQ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLT5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwwLUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLUppAEeOXzvVK2MY5wA" 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="_cwwLU5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLVZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwwLT5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLWJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwwLT5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLW5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwwLT5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLXppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwwLX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwwLYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLYZpAEeOXzvVK2MY5wA" 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="_cwwLYppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLZJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwwLXppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLZ5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwwLXppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLappAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwwLXppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLbZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwwLXppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLcJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwwLXppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLc5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwwLXppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLdppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwwLI5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLeZpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLe5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwwLfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLfppAEeOXzvVK2MY5wA" 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="_cwwLf5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwLgZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLg5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwwLhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLhppAEeOXzvVK2MY5wA" 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="_cwwLh5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwLiZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLi5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwwLg5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLjppAEeOXzvVK2MY5wA" 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="_cwwLkJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwwLg5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLk5pAEeOXzvVK2MY5wA" 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="_cwwLlZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwwLXppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwwLmJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_2PVfkBB-EeOsaJcHDk5fxQ/99" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLmZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwwLnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLnJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLnppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwwLn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLoZpAEeOXzvVK2MY5wA" 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="_cwwLoppAEeOXzvVK2MY5wA" 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="_cwwLpJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwwLpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLp5pAEeOXzvVK2MY5wA" 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="_cwwLqJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwwLtppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwLqppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwLrJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwLrppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwwLuppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwLsJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwLsppAEeOXzvVK2MY5wA" 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="_cwwLtJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwLtppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwwLt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwLuJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwwLuZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwLuppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwwLu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwLvJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwwLvZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLvppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwwLv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLwZpAEeOXzvVK2MY5wA" 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="_cwwLwppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLxJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwwLvppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLx5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwwLvppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwLyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwLyppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwwLy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwLzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwLzZpAEeOXzvVK2MY5wA" 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="_cwwLzppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwL0JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwwLyppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwL0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwL05pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwwLyppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwL1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwL1ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwwLyppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwL15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwL2ZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwwL2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwwL25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwL3JpAEeOXzvVK2MY5wA" 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="_cwwL3ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwL35pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwwL2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwL4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwL4ppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwwL2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwL45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwL5ZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwwL2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwL5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwL6JpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwwL2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwL6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwL65pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwwL2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwL7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwL7ppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwwL2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwL75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwL8ZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwwLnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwL8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwL85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwL9JpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwL9ppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwwL95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwL-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwL-ZpAEeOXzvVK2MY5wA" 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="_cwwL-ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwL_JpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwL_ppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwwL_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwMAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwMAZpAEeOXzvVK2MY5wA" 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="_cwwMAppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwMBJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMBppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwwL_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwMCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwMCZpAEeOXzvVK2MY5wA" 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="_cwwMC5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwwL_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwMDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwMDppAEeOXzvVK2MY5wA" 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="_cwwMEJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwwL2ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwwME5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_1K8DUBB-EeOsaJcHDk5fxQ/98" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMFJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwwMGZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwMFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwMF5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::formula')->notEmpty()"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMGZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwwMGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwMG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwMHJpAEeOXzvVK2MY5wA" 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="_cwwMHZpAEeOXzvVK2MY5wA" 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="_cwwMH5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwwMIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwMIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwMIppAEeOXzvVK2MY5wA" 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="_cwwMI5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwwMMZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwMJZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwMJ5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwMKZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwwMNZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwMK5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwMLZpAEeOXzvVK2MY5wA" 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="_cwwML5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwMMZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwwMMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwMM5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwwMNJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwMNZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwwMNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwMN5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwwMOJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMOZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwwMOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwMO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwMPJpAEeOXzvVK2MY5wA" 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="_cwwMPZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMP5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwwMOZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMQppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwwMOZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMRZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwwMRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwMR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwMSJpAEeOXzvVK2MY5wA" 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="_cwwMSZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMS5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwwMRZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMTppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwwMRZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMUZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwwMRZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMVJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwwMVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwwMVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwMV5pAEeOXzvVK2MY5wA" 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="_cwwMWJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMWppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwwMVJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMXZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwwMVJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMYJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwwMVJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMY5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwwMVJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMZppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwwMVJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMaZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwwMVJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMbJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwwMGZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwMbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwMb5pAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMcZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwwMcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwMc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwMdJpAEeOXzvVK2MY5wA" 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="_cwwMdZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwMd5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMeZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwwMeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwMe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwMfJpAEeOXzvVK2MY5wA" 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="_cwwMfZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwMf5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMgZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwwMeZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwMg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwMhJpAEeOXzvVK2MY5wA" 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="_cwwMhppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwwMeZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwMiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwMiZpAEeOXzvVK2MY5wA" 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="_cwwMi5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwwMVJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwwMjppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_tkTpIBB-EeOsaJcHDk5fxQ/97" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMj5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwwMkppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwMkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwMkppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwwMk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwMlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwMlZpAEeOXzvVK2MY5wA" 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="_cwwMlppAEeOXzvVK2MY5wA" 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="_cwwMmJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwwMmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwMmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwMm5pAEeOXzvVK2MY5wA" 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="_cwwMnJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwwMqppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwMnppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwMoJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwMoppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwwwkppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwMpJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwMpppAEeOXzvVK2MY5wA" 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="_cwwMqJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwMqppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwwMq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwwkJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwwwkZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwwkppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwwwk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwwlJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwwwlZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwwlppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwwwl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwwmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwwmZpAEeOXzvVK2MY5wA" 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="_cwwwmppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwwnJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwwwlppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwwnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwwn5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwwwlppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwwoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwwoppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwwwo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwwpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwwpZpAEeOXzvVK2MY5wA" 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="_cwwwpppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwwqJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwwwoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwwqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwwq5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwwwoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwwrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwwrppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwwwoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwwr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwwsZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwwwsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwwws5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwwtJpAEeOXzvVK2MY5wA" 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="_cwwwtZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwwt5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwwwsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwwuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwwuppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwwwsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwwu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwwvZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwwwsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwwvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwwwJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwwwsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwwwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwww5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwwwsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwwxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwwxppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwwwsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwwx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwwyZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwwMkppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwwyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwwy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwwzJpAEeOXzvVK2MY5wA" key="documentation" value="self.base_OpaqueAction.ownedComment.getAppliedStereotype('CTIEActivityDiagramProfile::constraint')->notEmpty()&#xA;&#xA;"/>
          </eAnnotations>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwwzppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwwwz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwww0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwww0ZpAEeOXzvVK2MY5wA" 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="_cwww0ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwww1JpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwww1ppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwww15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwww2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwww2ZpAEeOXzvVK2MY5wA" 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="_cwww2ppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwww3JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwww3ppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwww1ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwww35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwww4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwww4ZpAEeOXzvVK2MY5wA" 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="_cwww45pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwww1ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwww5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwww5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwww5ppAEeOXzvVK2MY5wA" 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="_cwww6JpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwwwsZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwww6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwww65pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_2bsiAA_5EeOZF-Flwvdt4A/96" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwww7JpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwww75pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwww7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwww75pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwww8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwww8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwww8ppAEeOXzvVK2MY5wA" 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="_cwww85pAEeOXzvVK2MY5wA" 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="_cwww9ZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwww9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwww95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwww-JpAEeOXzvVK2MY5wA" 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="_cwww-ZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwwxB5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwww-5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwww_ZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwww_5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwwxC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwxAZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwxA5pAEeOXzvVK2MY5wA" 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="_cwwxBZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwxB5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwwxCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwxCZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwwxCppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwxC5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwwxDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwxDZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwwxDppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxD5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwwxEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwxEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwxEppAEeOXzvVK2MY5wA" 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="_cwwxE5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxFZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwwxD5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxGJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwwxD5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxG5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwwxHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwxHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwxHppAEeOXzvVK2MY5wA" 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="_cwwxH5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxIZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwwxG5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxJJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwwxG5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxJ5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwwxG5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxKppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwwxK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwwxLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwxLZpAEeOXzvVK2MY5wA" 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="_cwwxLppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxMJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwwxKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxM5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwwxKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxNppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwwxKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxOZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwwxKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxPJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwwxKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxP5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwwxKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxQppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwww75pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxRZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwwxRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwxR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwxSJpAEeOXzvVK2MY5wA" 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="_cwwxSZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwxS5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxTZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwwxTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwxT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwxUJpAEeOXzvVK2MY5wA" 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="_cwwxUZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwxU5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxVZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwwxTZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwxV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwxWJpAEeOXzvVK2MY5wA" 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="_cwwxWppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwwxTZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwxXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwxXZpAEeOXzvVK2MY5wA" 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="_cwwxX5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwwxKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwwxYppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_zExCcA_5EeOZF-Flwvdt4A/95" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxY5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwwxZppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxZppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwwxZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwxaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwxaZpAEeOXzvVK2MY5wA" 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="_cwwxappAEeOXzvVK2MY5wA" 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="_cwwxbJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwwxbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwxbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwxb5pAEeOXzvVK2MY5wA" 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="_cwwxcJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwwxfppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwxcppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwxdJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwxdppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwwxgppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwxeJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwxeppAEeOXzvVK2MY5wA" 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="_cwwxfJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwxfppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwwxf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwxgJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwwxgZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwxgppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwwxg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwxhJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwwxhZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxhppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwwxh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwxiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwxiZpAEeOXzvVK2MY5wA" 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="_cwwxippAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxjJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwwxhppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxj5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwwxhppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxkppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwwxk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwxlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwxlZpAEeOXzvVK2MY5wA" 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="_cwwxlppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxmJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwwxkppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxm5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwwxkppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxnppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwwxkppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxoZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwwxoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwwxo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwxpJpAEeOXzvVK2MY5wA" 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="_cwwxpZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxp5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwwxoZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxqppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwwxoZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxrZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwwxoZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxsJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwwxoZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxs5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwwxoZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxtJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxtppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwwxoZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxuZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwwxZppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxvJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwwxvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwxvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwxv5pAEeOXzvVK2MY5wA" 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="_cwwxwJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwxwppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxxJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwwxxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwxxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwxx5pAEeOXzvVK2MY5wA" 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="_cwwxyJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwxyppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwxzJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwwxxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwxzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwxzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwxz5pAEeOXzvVK2MY5wA" 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="_cwwx0ZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwwxxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwx0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwx05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwx1JpAEeOXzvVK2MY5wA" 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="_cwwx1ppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwwxoZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwx15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwwx2ZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_frsU8A_5EeOZF-Flwvdt4A/94" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwx2ppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwwx3ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwx25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwx3ZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwwx3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwx35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwx4JpAEeOXzvVK2MY5wA" 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="_cwwx4ZpAEeOXzvVK2MY5wA" 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="_cwwx45pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwwx5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwx5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwx5ppAEeOXzvVK2MY5wA" 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="_cwwx55pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwwx9ZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwx6ZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwx65pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwx7ZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwwx-ZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwx75pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwx8ZpAEeOXzvVK2MY5wA" 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="_cwwx85pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwx9ZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwwx9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwx95pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwwx-JpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwx-ZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwwx-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwx-5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwwx_JpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwx_ZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwwx_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwx_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwyAJpAEeOXzvVK2MY5wA" 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="_cwwyAZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyA5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwwx_ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyBppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwwx_ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyCZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwwyCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwyC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwyDJpAEeOXzvVK2MY5wA" 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="_cwwyDZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyD5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwwyCZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyEppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwwyCZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyFZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwwyCZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyGJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwwyGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwwyGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwyG5pAEeOXzvVK2MY5wA" 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="_cwwyHJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyHppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwwyGJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyIZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwwyGJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyJJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwwyGJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyJ5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwwyGJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyKppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwwyGJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyLZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwwyGJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyMJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwwx3ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyM5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwwyNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwyNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwyNppAEeOXzvVK2MY5wA" 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="_cwwyN5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwyOZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyO5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwwyPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwyPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwyPppAEeOXzvVK2MY5wA" 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="_cwwyP5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwyQZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyQ5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwwyO5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwyRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwyRppAEeOXzvVK2MY5wA" 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="_cwwySJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwwyO5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwySZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwySppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwyS5pAEeOXzvVK2MY5wA" 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="_cwwyTZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwwyGJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwwyUJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_7cJZkA_4EeOZF-Flwvdt4A/93" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyUZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwwyVJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyVJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwwyVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwyVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwyV5pAEeOXzvVK2MY5wA" 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="_cwwyWJpAEeOXzvVK2MY5wA" 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="_cwwyWppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwwyW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwyXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwyXZpAEeOXzvVK2MY5wA" 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="_cwwyXppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwwybJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwyYJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwyYppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwyZJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwwycJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwyZppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwyaJpAEeOXzvVK2MY5wA" 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="_cwwyappAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwybJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwwybZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwybppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwwyb5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwycJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwwycZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwycppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwwyc5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwydJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwwydZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwydppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwyd5pAEeOXzvVK2MY5wA" 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="_cwwyeJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyeppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwwydJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwye5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyfZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwwydJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwygJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwwygZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwygppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwyg5pAEeOXzvVK2MY5wA" 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="_cwwyhJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyhppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwwygJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyiZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwwygJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyjJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwwygJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyj5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwwykJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwwykZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwykppAEeOXzvVK2MY5wA" 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="_cwwyk5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwylZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwwyj5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwylppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwymJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwwyj5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwymZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwym5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwwyj5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwynJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwynppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwwyj5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyoZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwwyj5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwypJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwwyj5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwypZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyp5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwwyVJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyqppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwwyq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwyrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwyrZpAEeOXzvVK2MY5wA" 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="_cwwyrppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwysJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwysppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwwys5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwytJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwytZpAEeOXzvVK2MY5wA" 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="_cwwytppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwyuJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyuppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwwysppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwyvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwyvZpAEeOXzvVK2MY5wA" 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="_cwwyv5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwwysppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwywJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwywZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwywppAEeOXzvVK2MY5wA" 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="_cwwyxJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwwyj5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwwyx5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_aB20EA_4EeOZF-Flwvdt4A/92" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyyJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwwyy5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwyyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwyy5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwwyzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwyzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwyzppAEeOXzvVK2MY5wA" 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="_cwwyz5pAEeOXzvVK2MY5wA" 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="_cwwy0ZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwwy0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwy05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwy1JpAEeOXzvVK2MY5wA" 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="_cwwy1ZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwwy45pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwy15pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwy2ZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwy25pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwwy55pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwy3ZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwy35pAEeOXzvVK2MY5wA" 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="_cwwy4ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwy45pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwwy5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwy5ZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwwy5ppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwy55pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwwy6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwy6ZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwwy6ppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwy65pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwwy7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwy7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwy7ppAEeOXzvVK2MY5wA" 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="_cwwy75pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwy8ZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwwy65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwy8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwy9JpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwwy65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwy9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwy95pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwwy-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwy-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwy-ppAEeOXzvVK2MY5wA" 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="_cwwy-5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwy_ZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwwy95pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwy_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzAJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwwy95pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzA5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwwy95pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzBppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwwzB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwwzCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwzCZpAEeOXzvVK2MY5wA" 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="_cwwzCppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzDJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwwzBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzD5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwwzBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzEppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwwzBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzFZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwwzBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzGJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwwzBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzG5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwwzBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzHppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwwyy5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzIZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwwzIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwzI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwzJJpAEeOXzvVK2MY5wA" 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="_cwwzJZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwzJ5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzKZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwwzKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwzK5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwzLZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzL5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwwzKZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwzMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwzMppAEeOXzvVK2MY5wA" 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="_cwwzNJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwwzKZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwzNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwzN5pAEeOXzvVK2MY5wA" 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="_cwwzOZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwwzBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwwzPJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_P7iEUA_4EeOZF-Flwvdt4A/91" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzPZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwwzQJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzQJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwwzQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwzQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwzQ5pAEeOXzvVK2MY5wA" 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="_cwwzRJpAEeOXzvVK2MY5wA" 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="_cwwzRppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwwzR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwzSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwzSZpAEeOXzvVK2MY5wA" 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="_cwwzSppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwwzWJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwzTJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwzTppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwzUJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwwzXJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwzUppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwzVJpAEeOXzvVK2MY5wA" 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="_cwwzVppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwzWJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwwzWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwzWppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwwzW5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwwzXJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwwzXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwwzXppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwwzX5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzYJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwwzYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwzYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwzY5pAEeOXzvVK2MY5wA" 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="_cwwzZJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzZppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwwzYJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzaZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwwzYJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzbJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwwzbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwzbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwzb5pAEeOXzvVK2MY5wA" 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="_cwwzcJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzcppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwwzbJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzdZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwwzbJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzeJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwwzbJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwze5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwwzfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwwzfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwzfppAEeOXzvVK2MY5wA" 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="_cwwzf5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzgZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwwze5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzhJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwwze5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzh5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwwze5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwziJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzippAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwwze5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzjZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwwze5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzkJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwwze5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzk5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwwzQJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzlppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwwzl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwzmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwzmZpAEeOXzvVK2MY5wA" 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="_cwwzmppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwznJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwznppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwwzn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwzoJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwzoppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzpJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwwznppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzp5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwwznppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwzqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwzqppAEeOXzvVK2MY5wA" 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="_cwwzrJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwwze5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwwzr5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_1Ckd0A_3EeOZF-Flwvdt4A/90" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzsJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwwzs5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwwzsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwwzs5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwwztJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwztZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwztppAEeOXzvVK2MY5wA" 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="_cwwzt5pAEeOXzvVK2MY5wA" 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="_cwwzuZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwwzuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwwzu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwwzvJpAEeOXzvVK2MY5wA" 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="_cwwzvZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwxXo5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwzv5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwzwZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwzw5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwxXp5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwwzxZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwwzx5pAEeOXzvVK2MY5wA" 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="_cwxXoZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwxXo5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwxXpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwxXpZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwxXpppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwxXp5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwxXqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwxXqZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwxXqppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxXq5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwxXrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxXrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxXrppAEeOXzvVK2MY5wA" 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="_cwxXr5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxXsZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwxXq5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxXsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxXtJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwxXq5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxXtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxXt5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwxXuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxXuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxXuppAEeOXzvVK2MY5wA" 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="_cwxXu5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxXvZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwxXt5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxXvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxXwJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwxXt5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxXwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxXw5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwxXt5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxXxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxXxppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwxXx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwxXyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxXyZpAEeOXzvVK2MY5wA" 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="_cwxXyppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxXzJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwxXxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxXzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxXz5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwxXxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxX0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxX0ppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwxXxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxX05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxX1ZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwxXxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxX1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxX2JpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwxXxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxX2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxX25pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwxXxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxX3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxX3ppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwwzs5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxX35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxX4ZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwxX4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxX45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxX5JpAEeOXzvVK2MY5wA" 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="_cwxX5ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxX55pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxX6ZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwxX6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxX65pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxX7ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxX75pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwxX6ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxX8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxX8ppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwxX6ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxX85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxX9ZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwxXxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxX9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwxX-JpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_MKjY8A_rEeOZF-Flwvdt4A/89" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxX-ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwxX_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxX-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxX_JpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwxX_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxX_ppAEeOXzvVK2MY5wA" 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="_cwxYAJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwxYAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxYAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxYA5pAEeOXzvVK2MY5wA" 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="_cwxYBJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwxYEppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxYBppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxYCJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxYCppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwxYFppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxYDJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxYDppAEeOXzvVK2MY5wA" 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="_cwxYEJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwxYEppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwxYE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwxYFJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwxYFZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwxYFppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwxYF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwxYGJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwxYGZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYGppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwxYG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxYHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxYHZpAEeOXzvVK2MY5wA" 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="_cwxYHppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYIJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwxYGppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYI5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwxYGppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYJppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwxYJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxYKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxYKZpAEeOXzvVK2MY5wA" 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="_cwxYKppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYLJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwxYJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYL5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwxYJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYMppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwxYJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYNZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwxYNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwxYN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxYOJpAEeOXzvVK2MY5wA" 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="_cwxYOZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYO5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwxYNZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYPppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwxYNZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYQZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwxYNZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYRJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwxYNZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYR5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwxYNZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYSppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwxYNZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYTZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwxX_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYUJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwxYUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxYUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxYU5pAEeOXzvVK2MY5wA" 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="_cwxYVJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxYVppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYWJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwxYWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxYWppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxYXJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYXppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwxYWJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYYZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwxYWJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYZJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwxYNZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwxYZ5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_pxodcA_pEeOZF-Flwvdt4A/88" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYaJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwxYa5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYa5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwxYbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxYbZpAEeOXzvVK2MY5wA" 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="_cwxYb5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwxYcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxYcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxYcppAEeOXzvVK2MY5wA" 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="_cwxYc5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwxYgZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxYdZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxYd5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxYeZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwxYhZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxYe5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxYfZpAEeOXzvVK2MY5wA" 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="_cwxYf5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwxYgZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwxYgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwxYg5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwxYhJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwxYhZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwxYhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwxYh5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwxYiJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYiZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwxYippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxYi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxYjJpAEeOXzvVK2MY5wA" 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="_cwxYjZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYj5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwxYiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYkppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwxYiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYlZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwxYlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxYl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxYmJpAEeOXzvVK2MY5wA" 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="_cwxYmZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYm5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwxYlZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYnppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwxYlZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYoZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwxYlZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYpJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwxYpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwxYpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxYp5pAEeOXzvVK2MY5wA" 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="_cwxYqJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYqppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwxYpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYrZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwxYpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYsJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwxYpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYs5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwxYpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYtJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYtppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwxYpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYuZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwxYpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYvJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwxYa5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYv5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwxYwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxYwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxYwppAEeOXzvVK2MY5wA" 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="_cwxYw5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxYxZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYx5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwxYyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxYyZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxYy5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxYzZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwxYx5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxYzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxY0JpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwxYx5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxY0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxY05pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwxYpJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxY1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwxY1ppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_Jh_GIA_pEeOZF-Flwvdt4A/87" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxY15pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwxY2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxY2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxY2ppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwxY25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxY3JpAEeOXzvVK2MY5wA" 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="_cwxY3ppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwxY35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxY4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxY4ZpAEeOXzvVK2MY5wA" 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="_cwxY4ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwxY8JpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxY5JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxY5ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxY6JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwxY9JpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxY6ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxY7JpAEeOXzvVK2MY5wA" 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="_cwxY7ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwxY8JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwxY8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwxY8ppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwxY85pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwxY9JpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwxY9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwxY9ppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwxY95pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxY-JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwxY-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxY-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxY-5pAEeOXzvVK2MY5wA" 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="_cwxY_JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxY_ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwxY-JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxY_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZAZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwxY-JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZBJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwxZBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxZBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxZB5pAEeOXzvVK2MY5wA" 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="_cwxZCJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZCppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwxZBJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZDZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwxZBJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZEJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwxZBJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZE5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwxZFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwxZFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxZFppAEeOXzvVK2MY5wA" 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="_cwxZF5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZGZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwxZE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZHJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwxZE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZH5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwxZE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZIppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwxZE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZJZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwxZE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZKJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwxZE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZK5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwxY2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZLppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwxZL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxZMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxZMZpAEeOXzvVK2MY5wA" 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="_cwxZMppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxZNJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZNppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwxZN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxZOJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxZOppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZPJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwxZNppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZP5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwxZNppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZQppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwxZE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwxZRZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_82hgIA_oEeOZF-Flwvdt4A/86" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZRppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwxZSZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZSZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwxZSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxZS5pAEeOXzvVK2MY5wA" 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="_cwxZTZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwxZTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxZT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxZUJpAEeOXzvVK2MY5wA" 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="_cwxZUZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwxZX5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxZU5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxZVZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxZV5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwxZY5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxZWZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxZW5pAEeOXzvVK2MY5wA" 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="_cwxZXZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwxZX5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwxZYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwxZYZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwxZYppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwxZY5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwxZZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwxZZZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwxZZppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZZ5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwxZaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxZaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxZappAEeOXzvVK2MY5wA" 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="_cwxZa5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZbZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwxZZ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZcJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwxZZ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZc5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwxZdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxZdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxZdppAEeOXzvVK2MY5wA" 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="_cwxZd5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZeZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwxZc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZfJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwxZc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZf5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwxZc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZgppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwxZg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwxZhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxZhZpAEeOXzvVK2MY5wA" 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="_cwxZhppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZiJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwxZgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZi5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwxZgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZjppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwxZgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZkZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwxZgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZlJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwxZgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZl5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwxZgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZmppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwxZSZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZnZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwxZnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxZn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxZoJpAEeOXzvVK2MY5wA" 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="_cwxZoZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxZo5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZpZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwxZpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxZp5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxZqZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZq5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwxZpZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZrppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwxZpZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZsZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwxZgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwxZtJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_3suUwA_oEeOZF-Flwvdt4A/85" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZtZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwxZuJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZuJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwxZuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxZuppAEeOXzvVK2MY5wA" 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="_cwxZvJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwxZvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxZvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxZv5pAEeOXzvVK2MY5wA" 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="_cwxZwJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwxZzppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxZwppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxZxJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxZxppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwxZ0ppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxZyJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxZyppAEeOXzvVK2MY5wA" 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="_cwxZzJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwxZzppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwxZz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwxZ0JpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwxZ0ZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwxZ0ppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwxZ05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwxZ1JpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwxZ1ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZ1ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwxZ15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxZ2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxZ2ZpAEeOXzvVK2MY5wA" 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="_cwxZ2ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZ3JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwxZ1ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZ3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZ35pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwxZ1ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZ4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZ4ppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwxZ45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxZ5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxZ5ZpAEeOXzvVK2MY5wA" 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="_cwxZ5ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZ6JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwxZ4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZ6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZ65pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwxZ4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZ7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZ7ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwxZ4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZ75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZ8ZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwxZ8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwxZ85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxZ9JpAEeOXzvVK2MY5wA" 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="_cwxZ9ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZ95pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwxZ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZ-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZ-ppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwxZ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZ-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxZ_ZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwxZ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxZ_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaAJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwxZ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxaAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaA5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwxZ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxaBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaBppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwxZ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxaB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaCZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwxZuJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxaCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaDJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwxaDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxaDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxaD5pAEeOXzvVK2MY5wA" 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="_cwxaEJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxaEppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaFJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwxaFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxaFppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxaGJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaGppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwxaFJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxaG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaHZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwxaFJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxaHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaIJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwxZ8ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxaIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwxaI5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_lVthMA_oEeOZF-Flwvdt4A/84" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaJJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwxaJ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxaJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaJ5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwxaKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxaKZpAEeOXzvVK2MY5wA" 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="_cwxaK5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwxaLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxaLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxaLppAEeOXzvVK2MY5wA" 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="_cwxaL5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwxaPZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxaMZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxaM5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxaNZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwxaQZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxaN5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxaOZpAEeOXzvVK2MY5wA" 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="_cwxaO5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwxaPZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwxaPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwxaP5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwxaQJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwxaQZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwxaQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwxaQ5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwxaRJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaRZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwxaRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxaR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxaSJpAEeOXzvVK2MY5wA" 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="_cwxaSZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaS5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwxaRZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxaTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaTppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwxaRZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxaT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaUZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwxaUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxaU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxaVJpAEeOXzvVK2MY5wA" 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="_cwxaVZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaV5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwxaUZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxaWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaWppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwxaUZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxaW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaXZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwxaUZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxaXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaYJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwxaYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwxaYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxaY5pAEeOXzvVK2MY5wA" 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="_cwxaZJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaZppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwxaYJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxaZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaaZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwxaYJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxaappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxabJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwxaYJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxabZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxab5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwxaYJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxacJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxacppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwxaYJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxac5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxadZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwxaYJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxadppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaeJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwxaJ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxaeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxae5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwxafJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxafZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxafppAEeOXzvVK2MY5wA" 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="_cwxaf5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxagZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxag5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwxahJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxahZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxah5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaiZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwxag5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxaippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxajJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwxag5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxajZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaj5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwxaYJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxakJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwxakppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_KREEkA_nEeOZF-Flwvdt4A/83" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxak5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwxalppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxalJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxalppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwxal5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxamJpAEeOXzvVK2MY5wA" 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="_cwxamppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwxam5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxanJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwxaqppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxanppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxaoJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxaoppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwxarppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwxapJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwxapppAEeOXzvVK2MY5wA" 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="_cwxaqJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwxaqppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwxaq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwxarJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwxarZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwxarppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwxar5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwxasJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwxasZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxasppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwxas5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxatJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxatZpAEeOXzvVK2MY5wA" 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="_cwxatppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxauJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwxasppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxauZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxau5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwxasppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxavJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxavppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwxav5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwxawJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxawZpAEeOXzvVK2MY5wA" 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="_cwxawppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxaxJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwxavppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxaxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxax5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwxavppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxayJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxayppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwxavppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxay5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxazZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwxazppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwxaz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwxa0JpAEeOXzvVK2MY5wA" 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="_cwxa0ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxa05pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwxazZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxa1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxa1ppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwxazZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxa15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxa2ZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwxazZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxa2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwxa3JpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwxazZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwxa3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx-sJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwxazZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx-sZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx-s5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwxazZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx-tJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx-tppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwxalppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx-t5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx-uZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwx-uppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwx-u5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwx-vJpAEeOXzvVK2MY5wA" 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="_cwx-vZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwx-v5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx-wZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwx-wppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwx-w5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwx-xZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx-x5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwx-wZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx-yJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx-yppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwx-wZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx-y5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx-zZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwxazZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx-zppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwx-0JpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_m6_H0A_mEeOZF-Flwvdt4A/82" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx-0ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwx-1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx-0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx-1JpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwx-1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwx-1ppAEeOXzvVK2MY5wA" 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="_cwx-2JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwx-2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwx-2ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwx-6JpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwx-3JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwx-3ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwx-4JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwx-7JpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwx-4ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwx-5JpAEeOXzvVK2MY5wA" 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="_cwx-5ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwx-6JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwx-6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwx-6ppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwx-65pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwx-7JpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwx-7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwx-7ppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwx-75pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx-8JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwx-8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwx-8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwx-85pAEeOXzvVK2MY5wA" 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="_cwx-9JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx-9ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwx-8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx-95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx--ZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwx-8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx--ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx-_JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwx-_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwx-_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwx-_5pAEeOXzvVK2MY5wA" 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="_cwx_AJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_AppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwx-_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_A5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_BZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwx-_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_BppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_CJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwx-_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_CZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_C5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwx_DJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwx_DZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwx_DppAEeOXzvVK2MY5wA" 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="_cwx_D5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_EZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwx_C5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_EppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_FJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwx_C5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_FZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_F5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwx_C5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_GJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_GppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwx_C5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_G5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_HZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwx_C5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_HppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_IJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwx_C5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_IZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_I5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwx-1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_JJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_JppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwx_J5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwx_KJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwx_KZpAEeOXzvVK2MY5wA" 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="_cwx_KppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwx_LJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_LppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwx_L5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwx_MJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwx_MppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_NJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwx_LppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_NZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_N5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwx_LppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_OJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_OppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwx_C5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_O5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwx_PZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/__BPLkA_lEeOZF-Flwvdt4A/81" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_PppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwx_QZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_P5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_QZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwx_QppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwx_Q5pAEeOXzvVK2MY5wA" 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="_cwx_RZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwx_RppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwx_R5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwx_VZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwx_SZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwx_S5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwx_TZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwx_WZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwx_T5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwx_UZpAEeOXzvVK2MY5wA" 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="_cwx_U5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwx_VZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwx_VppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwx_V5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwx_WJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwx_WZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwx_WppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwx_W5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwx_XJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_XZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwx_XppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwx_X5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwx_YJpAEeOXzvVK2MY5wA" 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="_cwx_YZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_Y5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwx_XZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_ZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_ZppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwx_XZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_Z5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_aZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwx_appAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwx_a5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwx_bJpAEeOXzvVK2MY5wA" 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="_cwx_bZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_b5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwx_aZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_cJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_cppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwx_aZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_c5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_dZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwx_aZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_dppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_eJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwx_eZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwx_eppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwx_e5pAEeOXzvVK2MY5wA" 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="_cwx_fJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_fppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwx_eJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_f5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_gZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwx_eJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_gppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_hJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwx_eJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_hZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_h5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwx_eJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_iJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_ippAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwx_eJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_i5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_jZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwx_eJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_jppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_kJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwx_QZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_kZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_k5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwx_lJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwx_lZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwx_lppAEeOXzvVK2MY5wA" 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="_cwx_l5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwx_mZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_m5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwx_nJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwx_nZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwx_n5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_oZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwx_m5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_oppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_pJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwx_m5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_pZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_p5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwx_eJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_qJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwx_qppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_tNy_IA_lEeOZF-Flwvdt4A/80" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_q5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwx_rppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_rJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_rppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwx_r5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwx_sJpAEeOXzvVK2MY5wA" 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="_cwx_sppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwx_s5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwx_tJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwx_wppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwx_tppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwx_uJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwx_uppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwx_xppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwx_vJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwx_vppAEeOXzvVK2MY5wA" 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="_cwx_wJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwx_wppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwx_w5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwx_xJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwx_xZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwx_xppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwx_x5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwx_yJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwx_yZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_yppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwx_y5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwx_zJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwx_zZpAEeOXzvVK2MY5wA" 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="_cwx_zppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_0JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwx_yppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_05pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwx_yppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_1ppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwx_15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwx_2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwx_2ZpAEeOXzvVK2MY5wA" 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="_cwx_2ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_3JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwx_1ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_35pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwx_1ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_4ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwx_1ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_5ZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwx_5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwx_55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwx_6JpAEeOXzvVK2MY5wA" 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="_cwx_6ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_65pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwx_5ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_7ppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwx_5ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_8ZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwx_5ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_9JpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwx_5ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_95pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwx_5ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx_-ppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwx_5ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx_-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwx__ZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwx_rppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwx__ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAAJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwyAAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyAAppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyABJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyABppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwyAB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyACJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyACppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyADJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwyABppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyADZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAD5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwyABppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAEppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwx_5ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwyAFZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_h3ywMA_lEeOZF-Flwvdt4A/79" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAFppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwyAGZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAGZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwyAGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyAG5pAEeOXzvVK2MY5wA" 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="_cwyAHZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwyAHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyAH5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwyALZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyAIZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyAI5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyAJZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwyAMZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyAJ5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyAKZpAEeOXzvVK2MY5wA" 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="_cwyAK5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwyALZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwyALppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwyAL5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwyAMJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwyAMZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwyAMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwyAM5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwyANJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyANZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwyANppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyAN5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAOZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwyANZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAPJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwyANZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAP5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwyAQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwyAQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwyAQppAEeOXzvVK2MY5wA" 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="_cwyAQ5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyARZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwyAP5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyARppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyASJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwyAP5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyASZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAS5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwyAP5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyATJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyATppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwyAT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cwyAUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwyAUZpAEeOXzvVK2MY5wA" 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="_cwyAUppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAVJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwyATppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAV5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwyATppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAWppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwyATppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAXZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwyATppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAYJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwyATppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAY5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwyATppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAZppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwyAGZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAaZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwyAappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyAa5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyAbZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAb5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwyAcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyAcZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyAc5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAdZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwyAb5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAeJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwyAb5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAe5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwyATppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwyAfppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_DF1e4A_lEeOZF-Flwvdt4A/78" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAf5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwyAgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAgppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwyAg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyAhJpAEeOXzvVK2MY5wA" 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="_cwyAhppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwyAh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyAiJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwyAlppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyAippAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyAjJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyAjppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwyAmppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyAkJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyAkppAEeOXzvVK2MY5wA" 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="_cwyAlJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwyAlppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwyAl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwyAmJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwyAmZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwyAmppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwyAm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwyAnJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwyAnZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAnppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwyAn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyAoJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAoppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwyAnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyApZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwyAnppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyApppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAqJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwyAqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyAqppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyArJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwyAqJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyArZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwyArppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwyAr5pAEeOXzvVK2MY5wA" 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="_cwyAsZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwyAqJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwyAs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwyAtJpAEeOXzvVK2MY5wA" 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="_cwyAtppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwyAqJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwyAuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwyAuZpAEeOXzvVK2MY5wA" 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="_cwyAu5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwyAvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyAvZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAv5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwyAu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAwppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwyAu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAxZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwyAu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAyJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwyAu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAy5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwyAu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyAzppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwyAu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyAz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyA0ZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwyAgppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyA0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyA1JpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwyA1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyA1ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyA2JpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyA2ppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwyA25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyA3JpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyA3ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyA4JpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwyA2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyA4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyA45pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwyA2ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyA5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyA5ppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwyAu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyA55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwyA6ZpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_0Qn-IA_kEeOZF-Flwvdt4A/77" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyA6ppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwyA7ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyA65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyA7ZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwyA7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyA75pAEeOXzvVK2MY5wA" 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="_cwyA8ZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwyA8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyA85pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwyBAZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyA9ZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyA95pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyA-ZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwyBBZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyA-5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyA_ZpAEeOXzvVK2MY5wA" 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="_cwyA_5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwyBAZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwyBAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwyBA5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwyBBJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwyBBZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwyBBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwyBB5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwyBCJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBCZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwyBCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyBC5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBDZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwyBCZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBEJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwyBCZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBE5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwyBFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyBFZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBF5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwyBE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwyBGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwyBGppAEeOXzvVK2MY5wA" 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="_cwyBHJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwyBE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwyBHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwyBH5pAEeOXzvVK2MY5wA" 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="_cwyBIZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwyBE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwyBI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwyBJJpAEeOXzvVK2MY5wA" 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="_cwyBJppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwyBJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyBKJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBKppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwyBJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBLZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwyBJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBMJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwyBJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBM5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwyBJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBNppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwyBJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBOZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwyBJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBPJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwyA7ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBP5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwyBQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyBQZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyBQ5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBRZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwyBRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyBR5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyBSZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBS5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwyBRZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBTppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwyBRZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBUZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwyBJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwyBVJpAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_xRkzEA_kEeOZF-Flwvdt4A/76" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBVZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwyBWJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBWJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwyBWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyBWppAEeOXzvVK2MY5wA" 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="_cwyBXJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwyBXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyBXppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwyBbJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyBYJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyBYppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyBZJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwyBcJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyBZppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyBaJpAEeOXzvVK2MY5wA" 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="_cwyBappAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwyBbJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwyBbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwyBbppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwyBb5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwyBcJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwyBcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwyBcppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwyBc5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBdJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwyBdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyBdppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBeJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwyBdJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBe5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwyBdJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBfppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwyBf5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyBgJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBgppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwyBfppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwyBhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwyBhZpAEeOXzvVK2MY5wA" 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="_cwyBh5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwyBfppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwyBiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwyBippAEeOXzvVK2MY5wA" 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="_cwyBjJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwyBfppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwyBjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwyBj5pAEeOXzvVK2MY5wA" 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="_cwyBkZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwyBkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyBk5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBlZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwyBkZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBmJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwyBkZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBm5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwyBkZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBnppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwyBkZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBoZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwyBkZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBpJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwyBkZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBp5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwyBWJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBqppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwyBq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyBrJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyBrppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBsJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwyBsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyBsppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyBtJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBtppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwyBsJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBuZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwyBsJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBvJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwyBkZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwyBv5pAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_vXN0oA_jEeOZF-Flwvdt4A/75" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBwJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwyBw5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyBwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyBw5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwyBxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyBxZpAEeOXzvVK2MY5wA" 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="_cwyBx5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwyByJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyByZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwyly5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyBy5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwylwZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwylw5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwylz5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwylxZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwylx5pAEeOXzvVK2MY5wA" 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="_cwylyZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwyly5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwylzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwylzZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwylzppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwylz5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwyl0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwyl0ZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwyl0ppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyl05pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwyl1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyl1ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyl15pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwyl05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyl2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyl2ppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwyl05pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyl25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyl3ZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwyl3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyl35pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyl4ZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwyl3ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyl4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwyl45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwyl5JpAEeOXzvVK2MY5wA" 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="_cwyl5ppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwyl3ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyl55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwyl6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwyl6ZpAEeOXzvVK2MY5wA" 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="_cwyl65pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwyl3ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyl7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwyl7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwyl7ppAEeOXzvVK2MY5wA" 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="_cwyl8JpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwyl8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyl8ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyl9JpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwyl8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyl9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyl95pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwyl8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyl-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyl-ppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwyl8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyl-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyl_ZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwyl8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyl_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymAJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwyl8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymA5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwyl8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymBppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwyBw5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymCZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwymCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwymC5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwymDZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymD5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwymEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwymEZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwymE5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymFZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwymD5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymGJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwymD5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymG5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwyl8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwymHppAEeOXzvVK2MY5wA" name="CTIEActivityDiagramProfile" nsURI="http:///schemas/CTIEActivityDiagramProfile/_pfaTwA_jEeOZF-Flwvdt4A/74" nsPrefix="CTIEActivityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymH5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwymIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymIppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwymI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwymJJpAEeOXzvVK2MY5wA" 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="_cwymJppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwymJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwymKJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwymNppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwymKppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwymLJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwymLppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwymOppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwymMJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwymMppAEeOXzvVK2MY5wA" 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="_cwymNJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwymNppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwymN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwymOJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwymOZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwymOppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwymO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwymPJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwymPZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymPppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwymP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwymQJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymQppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwymPppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymRZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwymPppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymSJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwymSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwymSppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymTJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwymSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwymTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwymT5pAEeOXzvVK2MY5wA" 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="_cwymUZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwymSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwymU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwymVJpAEeOXzvVK2MY5wA" 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="_cwymVppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwymSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwymWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwymWZpAEeOXzvVK2MY5wA" 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="_cwymW5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwymXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwymXZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymX5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwymW5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymYppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwymW5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymZZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwymW5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymaJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwymW5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyma5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwymW5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymbppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwymW5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymcZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwymIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymdJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwymdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwymdppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwymeJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymeppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwyme5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwymfJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwymfppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymgJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwymeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymg5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwymeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymhppAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwymW5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwymiZpAEeOXzvVK2MY5wA" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_m40E8A_jEeOZF-Flwvdt4A/73" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymippAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwymjZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymjZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwymjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwymj5pAEeOXzvVK2MY5wA" 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="_cwymkZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwymkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwymk5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwymoZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwymlZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyml5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwymmZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwympZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwymm5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwymnZpAEeOXzvVK2MY5wA" 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="_cwymn5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwymoZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwymoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwymo5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwympJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwympZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwympppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwymp5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwymqJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymqZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwymqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwymq5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymrZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwymqZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymrppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymsJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwymqZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyms5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwymtJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwymtZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymt5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwyms5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwymuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwymuppAEeOXzvVK2MY5wA" 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="_cwymvJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwyms5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwymvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwymv5pAEeOXzvVK2MY5wA" 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="_cwymwZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwyms5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwymw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwymxJpAEeOXzvVK2MY5wA" 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="_cwymxppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwymx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwymyJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymyppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwymxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwymzZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwymxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwymzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwym0JpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwymxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwym0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwym05pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwymxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwym1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwym1ppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwymxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwym15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwym2ZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwymxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwym2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwym3JpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwymjZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwym3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwym35pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwym4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwym4ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwym45pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwym5ZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwym5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwym55pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwym6ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwym65pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwym5ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwym7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwym7ppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwym5ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwym75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwym8ZpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwymxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwym8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwym9JpAEeOXzvVK2MY5wA" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_iInsYA_jEeOZF-Flwvdt4A/72" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwym9ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwym-JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwym9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwym-JpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwym-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwym-ppAEeOXzvVK2MY5wA" 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="_cwym_JpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwym_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwym_ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwynDJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwynAJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwynAppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwynBJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwynEJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwynBppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwynCJpAEeOXzvVK2MY5wA" 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="_cwynCppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwynDJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwynDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwynDppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwynD5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwynEJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwynEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwynEppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwynE5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynFJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwynFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwynFppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynGJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwynFJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynG5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwynFJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynHppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwynH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwynIJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynIppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwynHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwynJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwynJZpAEeOXzvVK2MY5wA" 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="_cwynJ5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwynHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwynKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwynKppAEeOXzvVK2MY5wA" 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="_cwynLJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwynHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwynLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwynL5pAEeOXzvVK2MY5wA" 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="_cwynMZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwynMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwynM5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynNZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwynMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynOJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwynMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynO5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwynMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynPppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwynMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynQZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwynMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynRJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwynMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynR5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwym-JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynSppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwynS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwynTJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwynTppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynUJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwynUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwynUppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwynVJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynVppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwynUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynWZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwynUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynXJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwynMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwynX5pAEeOXzvVK2MY5wA" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_HVUpAA_jEeOZF-Flwvdt4A/71" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynYJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwynY5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynY5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwynZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwynZZpAEeOXzvVK2MY5wA" 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="_cwynZ5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwynaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwynaZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwynd5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyna5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwynbZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwynb5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwyne5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyncZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwync5pAEeOXzvVK2MY5wA" 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="_cwyndZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwynd5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwyneJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwyneZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwyneppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwyne5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwynfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwynfZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwynfppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynf5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwyngJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyngZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyng5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwynf5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynhppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwynf5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyniZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwynippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyni5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynjZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwyniZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
          <eAnnotations xmi:id="_cwynj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/emf/2002/GenModel">
            <details xmi:id="_cwynkJpAEeOXzvVK2MY5wA" 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="_cwynkppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwyniZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynlZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwyniZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynmJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwynmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwynmppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynnJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwynmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynn5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwynmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynoppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwynmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyno5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynpZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwynmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynqJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwynmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynq5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwynmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynrppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwynY5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynsZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwynsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyns5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyntZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynt5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwynuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwynuZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwynu5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynvZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwynt5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynwJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwynt5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynw5pAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwynmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwynxppAEeOXzvVK2MY5wA" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_Il850AwGEeOWG7iKodzrRQ/70" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynx5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwynyppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwynyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwynyppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwyny5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwynzJpAEeOXzvVK2MY5wA" 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="_cwynzppAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwynz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyn0JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwyn3ppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyn0ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyn1JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyn1ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwyn4ppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyn2JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyn2ppAEeOXzvVK2MY5wA" 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="_cwyn3JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwyn3ppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwyn35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwyn4JpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwyn4ZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwyn4ppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwyn45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwyn5JpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwyn5ZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyn5ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwyn55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyn6JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyn6ppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwyn5ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyn65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyn7ZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwyn5ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyn7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyn8JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwyn8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyn8ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyn9JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwyn8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyn9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyn95pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwyn8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyn-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyn-ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwyn8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyn-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyn_ZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwyn_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyn_5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoAZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwyn_ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoBJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwyn_ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoB5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwyn_ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoCppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwyn_ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoDZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwyn_ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoEJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwyn_ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoE5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwynyppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoFppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwyoF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyoGJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyoGppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoHJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwyoHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyoHppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyoIJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoIppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwyoHJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoJZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwyoHJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoKJpAEeOXzvVK2MY5wA" name="date" eSuperTypes="_cwyn_ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwyoK5pAEeOXzvVK2MY5wA" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_eoU78AvyEeOWG7iKodzrRQ/69" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoLJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwyoL5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoL5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwyoMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyoMZpAEeOXzvVK2MY5wA" 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="_cwyoM5pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwyoNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyoNZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwyoQ5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyoN5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyoOZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyoO5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwyoR5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyoPZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyoP5pAEeOXzvVK2MY5wA" 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="_cwyoQZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwyoQ5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwyoRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwyoRZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwyoRppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwyoR5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwyoSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwyoSZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwyoSppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoS5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwyoTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyoTZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoT5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwyoS5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoUppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwyoS5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoVZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwyoVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyoV5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoWZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwyoVZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoXJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwyoVZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoX5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwyoVZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoYppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwyoY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyoZJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoZppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwyoYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoaZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwyoYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyobJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwyoYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyobZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyob5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwyoYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyocJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyocppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwyoYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyodZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwyoYppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyodppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoeJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwyoL5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoe5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwyofJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyofZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyof5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyogZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwyogppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyog5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyohZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoh5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwyogZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoippAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwyogZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoi5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwyojZpAEeOXzvVK2MY5wA" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_m8A8UAvlEeOWG7iKodzrRQ/68" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyojppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwyokZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyokZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwyokppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyok5pAEeOXzvVK2MY5wA" 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="_cwyolZpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwyolppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyol5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwyopZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyomZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyom5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyonZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwyoqZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyon5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyooZpAEeOXzvVK2MY5wA" 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="_cwyoo5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwyopZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwyopppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwyop5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwyoqJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwyoqZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwyoqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwyoq5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwyorJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyorZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwyorppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyor5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyosZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwyorZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyosppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyotJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwyorZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyotZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyot5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwyouJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyouZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyou5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwyot5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyovJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyovppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwyot5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyov5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyowZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwyot5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyowppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoxJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwyoxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyoxppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoyJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwyoxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyoy5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwyoxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyozJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyozppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwyoxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyoz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyo0ZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwyoxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyo0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyo1JpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwyoxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyo1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyo15pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwyoxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyo2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyo2ppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwyokZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwyo25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyo3ZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwyo3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyo35pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwyo4ZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwyo45pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwyo5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyo5ZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwyo55pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzM0ZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwyo45pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzM0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzM1JpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwyo45pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzM1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwzM15pAEeOXzvVK2MY5wA" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_f-2V4AvlEeOWG7iKodzrRQ/67" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzM2JpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwzM25pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzM2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzM25pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwzM3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzM3ZpAEeOXzvVK2MY5wA" 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="_cwzM35pAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cwzM4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzM4ZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwzM75pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzM45pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzM5ZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzM55pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwzM85pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzM6ZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzM65pAEeOXzvVK2MY5wA" 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="_cwzM7ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwzM75pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwzM8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwzM8ZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwzM8ppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwzM85pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwzM9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwzM9ZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwzM9ppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzM95pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwzM-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzM-ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzM-5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwzM95pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzM_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzM_ppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwzM95pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzM_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNAZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwzNAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNA5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNBZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwzNAZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNCJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwzNAZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNC5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwzNAZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNDppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwzND5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNEJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNEppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwzNDppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNFZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwzNDppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNGJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwzNDppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNG5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwzNDppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNHppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwzNDppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNIZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwzNDppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNJJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwzM25pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNJ5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwzNKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNKZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzNK5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNLZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwzNLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNL5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNMZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNM5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwzNLZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNNppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwzNLZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwzNOZpAEeOXzvVK2MY5wA" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_3MueoAvNEeOWG7iKodzrRQ/66" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNOppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwzNPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNPZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwzNPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNP5pAEeOXzvVK2MY5wA" 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="_cwzNQZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cwzNUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzNQ5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwzNVJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzNRZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzNR5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzNSZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwzNWJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzNS5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNTZpAEeOXzvVK2MY5wA" 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="_cwzNUJpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cwzNUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNUppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwzNVJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwzNVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwzNVppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwzNV5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwzNWJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwzNWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwzNWppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwzNW5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNXJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwzNXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNXppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNYJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwzNXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNY5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwzNXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNZppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwzNZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNaJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNappAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwzNZppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNbZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwzNZppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNcJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwzNZppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNc5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwzNdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNdZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNd5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwzNc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNeppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwzNc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNfZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwzNc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNgJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwzNc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNg5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwzNc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNhppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwzNc5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNiZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwzNPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNjJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwzNjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNjppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzNkJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNkppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwzNk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNlJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNlppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNmJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwzNkppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNm5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwzNkppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwzNnppAEeOXzvVK2MY5wA" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_ecAMcAvMEeOWG7iKodzrRQ/65" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNn5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwzNoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNoppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwzNo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNpJpAEeOXzvVK2MY5wA" 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="_cwzNpppAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cwzNtZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzNqJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwzNuZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzNqppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzNrJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzNrppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwzNvZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzNsJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNsppAEeOXzvVK2MY5wA" 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="_cwzNtZpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cwzNtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNt5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwzNuZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwzNuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwzNu5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwzNvJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwzNvZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwzNvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwzNv5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwzNwJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNwZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwzNwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNw5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNxZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwzNwZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNyJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwzNwZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzNyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNy5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwzNzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzNzZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzNz5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwzNy5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzN0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzN0ppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwzNy5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzN05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzN1ZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwzNy5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzN1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzN2JpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwzN2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzN2ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzN3JpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwzN2JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzN3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzN35pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwzN2JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzN4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzN4ppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwzN2JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzN45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzN5ZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwzN2JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzN5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzN6JpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwzN2JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzN6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzN65pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwzN2JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzN7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzN7ppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwzNoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzN75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzN8ZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwzN8ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzN85pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzN9ZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzN95pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwzN-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzN-ZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzN-5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzN_ZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwzN95pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzN_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOAJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwzN95pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwzOA5pAEeOXzvVK2MY5wA" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_ZppioAvKEeOWG7iKodzrRQ/64" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOBJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwzOB5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOB5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwzOCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzOCZpAEeOXzvVK2MY5wA" 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="_cwzOC5pAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cwzOGppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzODJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzODZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwzOHppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzOD5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzOEZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzOE5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwzOIppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzOFZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzOF5pAEeOXzvVK2MY5wA" 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="_cwzOGppAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cwzOG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzOHJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwzOHppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwzOH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwzOIJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwzOIZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwzOIppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwzOI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwzOJJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwzOJZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOJppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwzOJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzOKJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOKppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwzOJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOLZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwzOJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOMJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwzOMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzOMppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzONJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwzOMJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzONZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzON5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwzOMJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOOppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwzOMJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOPZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwzOPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzOP5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOQZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwzOPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzORJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwzOPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzORZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOR5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwzOPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOSppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwzOPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOTZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwzOPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOUJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwzOPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOU5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwzOB5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOVppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwzOV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzOWJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzOWppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOXJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwzOXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzOXppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzOYJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOYppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwzOXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOZZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwzOXJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwzOaJpAEeOXzvVK2MY5wA" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_LBrpIAvJEeOWG7iKodzrRQ/63" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOaZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwzObJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzObJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwzObZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzObppAEeOXzvVK2MY5wA" 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="_cwzOcJpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cwzOf5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzOcppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwzOg5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzOdJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzOdppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzOeJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwzOh5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzOeppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzOfJpAEeOXzvVK2MY5wA" 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="_cwzOf5pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cwzOgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzOgZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwzOg5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwzOhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwzOhZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwzOhppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwzOh5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwzOiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwzOiZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwzOippAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOi5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwzOjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzOjZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOj5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwzOi5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOkppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwzOi5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOlZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwzOlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzOl5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOmZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwzOlZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOnJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwzOlZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOn5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwzOlZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOoppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwzOo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzOpJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOpppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwzOoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOqZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwzOoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOrJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwzOoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOr5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwzOoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOsppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwzOoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOtZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwzOoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOuJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwzObJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOu5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwzOvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzOvZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzOv5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOwZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwzOwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzOw5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzOxZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOx5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwzOwZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOyppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwzOwZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwzOzZpAEeOXzvVK2MY5wA" name="CTIEActicityDiagramProfile" nsURI="http:///schemas/CTIEActicityDiagramProfile/_x0bzAAvHEeOWG7iKodzrRQ/62" nsPrefix="CTIEActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzOzppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwzO0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzOz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzO0ZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwzO0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzO05pAEeOXzvVK2MY5wA" 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="_cwzO1ZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cwzO5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzO1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzO15pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwzO6JpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzO2ZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzO25pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzO3ZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwzO7JpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzO35pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzO4ZpAEeOXzvVK2MY5wA" 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="_cwzO5JpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cwzO5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzO5ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwzO6JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwzO6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwzO6ppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwzO65pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwzO7JpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwzO7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwzO7ppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwzO75pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzO8JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwzO8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzO8ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzO9JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwzO8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzO9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzO95pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwzO8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzO-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzO-ppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwzO-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzO_JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzO_ppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwzO-ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzO_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPAZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwzO-ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPBJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwzO-ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPB5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwzPCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzPCZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPC5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwzPB5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPDppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwzPB5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPEZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwzPB5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPFJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwzPB5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPF5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwzPB5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPGppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwzPB5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPHZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwzO0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPIJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwzPIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzPIppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzPJJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPJppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwzPJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzPKJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzPKppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPLJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwzPJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPL5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwzPJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwzPMppAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_vB8dQAvHEeOWG7iKodzrRQ/61" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPM5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwzPNppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPNppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwzPN5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzPOJpAEeOXzvVK2MY5wA" 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="_cwzPOppAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cwzPSZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzPPJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwzPTZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzPPppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzPQJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzPQppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwzPUZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzPRJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzPRppAEeOXzvVK2MY5wA" 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="_cwzPSZpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cwzPSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzPS5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwzPTZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwzPTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwzPT5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwzPUJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwzPUZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwzPUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwzPU5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwzPVJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPVZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwzPVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzPV5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPWZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwzPVZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPXJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwzPVZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPX5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwzPYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzPYZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPY5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwzPX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPZppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwzPX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPaZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwzPX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPbJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwzPbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzPbppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPcJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwzPbJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPc5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwzPbJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPdppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwzPbJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPd5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPeZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwzPbJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPeppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPfJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwzPbJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPf5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwzPbJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPgppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwzPNppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPhZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwzPhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzPh5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzPiZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPi5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwzPjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzPjZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzPj5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPkZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwzPi5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPlJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwzPi5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPlZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwzPl5pAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_XrqIAAsyEeOp0Yb18Jl6bA/60" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPmJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwzPm5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPm5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwzPnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzPnZpAEeOXzvVK2MY5wA" 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="_cwzPn5pAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cwzPrppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzPoZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwzPsppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzPo5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzPpZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzPp5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwzPtppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzPqZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzPq5pAEeOXzvVK2MY5wA" 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="_cwzPrppAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cwzPr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzPsJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwzPsppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwzPs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwzPtJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwzPtZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwzPtppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwzPt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwzPuJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwzPuZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPuppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwzPu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzPvJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPvppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwzPuppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPwZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwzPuppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPxJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwzPxZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzPxppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPyJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwzPxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPy5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwzPxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzPzppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwzPxJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzPz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzP0ZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwzP0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzP05pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzP1ZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwzP0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzP1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzP2JpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwzP0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzP2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzP25pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwzP0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzz4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzz4ppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwzP0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzz45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzz5ZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwzP0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzz5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzz6JpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwzP0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzz6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzz65pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwzPm5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzz7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzz7ppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwzz75pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzz8JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwzz8ppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzz9JpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwzz9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzz9ppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwzz-JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzz-ppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwzz9JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzz-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwzz_ZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwzz9JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwzz_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0AJpAEeOXzvVK2MY5wA" name="Money_Value">
          <eAnnotations xmi:id="_cwz0AZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwz0AppAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_TJDfgAsyEeOp0Yb18Jl6bA/59" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0A5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwz0BppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0BJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0BppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwz0B5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0CJpAEeOXzvVK2MY5wA" 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="_cwz0CppAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cwz0GZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0C5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz0DJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwz0HZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz0DppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz0EJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz0EppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwz0IZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz0FJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0FppAEeOXzvVK2MY5wA" 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="_cwz0GZpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cwz0GppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0G5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwz0HZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwz0HppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwz0H5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwz0IJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwz0IZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwz0IppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwz0I5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwz0JJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0JZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwz0JppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0J5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0KZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwz0JZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0KppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0LJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwz0JZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0LZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0L5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwz0MJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0MZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0M5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwz0L5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0NJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0NppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwz0L5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0N5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0OZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwz0L5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0OppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0PJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwz0PZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0PppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0QJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwz0PJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0QZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0Q5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwz0PJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0RJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0RppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwz0PJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0R5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0SZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwz0PJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0SppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0TJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwz0PJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0TZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0T5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwz0PJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0UJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0UppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwz0BppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0U5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0VZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwz0VppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0V5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz0WZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0W5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwz0XJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0XZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0X5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0YZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwz0W5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0YppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0ZJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwz0W5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0ZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0Z5pAEeOXzvVK2MY5wA" name="Money_Value">
          <eAnnotations xmi:id="_cwz0aJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwz0aZpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_zagqIAsxEeOp0Yb18Jl6bA/58" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0appAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwz0bZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0a5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0bZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwz0bppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0b5pAEeOXzvVK2MY5wA" 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="_cwz0cZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cwz0gJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0cppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz0c5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwz0hJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz0dZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz0d5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz0eZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwz0iJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz0e5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0fZpAEeOXzvVK2MY5wA" 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="_cwz0gJpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cwz0gZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0gppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwz0hJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwz0hZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwz0hppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwz0h5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwz0iJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwz0iZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwz0ippAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwz0i5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0jJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwz0jZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0jppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0kJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwz0jJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0kZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0k5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwz0jJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0lJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0lppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwz0l5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0mJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0mppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwz0lppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0m5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0nZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwz0lppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0nppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0oJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwz0lppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0oZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0o5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwz0pJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0pZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0p5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwz0o5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0qJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0qppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwz0o5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0q5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0rZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwz0o5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0rppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0sJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwz0o5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0sZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0s5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwz0o5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0tJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0tppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwz0o5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0t5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0uZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwz0bZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0uppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0vJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwz0vZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0vppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz0wJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0wppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwz0w5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0xJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0xppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0yJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwz0wppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0yZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0y5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwz0wppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0zJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwz0zppAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_7vHPgAsvEeOp0Yb18Jl6bA/57" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0z5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwz00ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz00JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz00ppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwz005pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz01JpAEeOXzvVK2MY5wA" 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="_cwz01ppAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cwz05ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz015pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz02JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwz06ZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz02ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz03JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz03ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwz07ZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz04JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz04ppAEeOXzvVK2MY5wA" 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="_cwz05ZpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cwz05ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz055pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwz06ZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwz06ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwz065pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwz07JpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwz07ZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwz07ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwz075pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwz08JpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz08ZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwz08ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz085pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz09ZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwz08ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz09ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0-JpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwz08ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz0-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0-5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwz0_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz0_ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz0_5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwz0-5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1AJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1AppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwz0-5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1A5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1BZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwz0-5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1BppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1CJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwz1CZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1CppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1DJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwz1CJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1DZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1D5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwz1CJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1EJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1EppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwz1CJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1E5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1FZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwz1CJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1FppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1GJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwz1CJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1GZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1G5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwz1CJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1HJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1HppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwz00ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1H5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1IZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwz1IppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1I5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz1JZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1J5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwz1KJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1KZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1K5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1LZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwz1J5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1LppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1MJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwz1J5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1MZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cwz1M5pAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_B9asMAstEeOp0Yb18Jl6bA/56" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1NJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwz1N5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1NZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1N5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwz1OJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1OZpAEeOXzvVK2MY5wA" 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="_cwz1O5pAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cwz1SppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1PJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz1PZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwz1TppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz1P5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz1QZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz1Q5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwz1UppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz1RZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1R5pAEeOXzvVK2MY5wA" 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="_cwz1SppAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cwz1S5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1TJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwz1TppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwz1T5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwz1UJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwz1UZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwz1UppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwz1U5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwz1VJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwz1VZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1VppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwz1V5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1WJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1WppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwz1VppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1W5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1XZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwz1VppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1XppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1YJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwz1YZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1YppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1ZJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwz1YJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1ZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1Z5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwz1YJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1aJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1appAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwz1YJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1a5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1bZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwz1bppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1b5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1cZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwz1bZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1cppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1dJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwz1bZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1dZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1d5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwz1bZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1eJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1eppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwz1bZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1e5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1fZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwz1bZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1fppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1gJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwz1bZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1gZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1g5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwz1N5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1hJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1hppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwz1h5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1iJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz1ippAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1jJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwz1jZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1jppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1kJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1kppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwz1jJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1k5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1lZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwz1jJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1lppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1mJpAEeOXzvVK2MY5wA" name="Money">
          <eAnnotations xmi:id="_cwz1mZpAEeOXzvVK2MY5wA" 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="_cwz1m5pAEeOXzvVK2MY5wA" name="Euros">
          <eAnnotations xmi:id="_cwz1nJpAEeOXzvVK2MY5wA" 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="_cwz1nppAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_os05EAspEeOp0Yb18Jl6bA/55" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1n5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwz1oppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1oJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1oppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwz1o5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1pJpAEeOXzvVK2MY5wA" 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="_cwz1pppAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cwz1tZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1p5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz1qJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwz1uZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz1qppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz1rJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz1rppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwz1vZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz1sJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1sppAEeOXzvVK2MY5wA" 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="_cwz1tZpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cwz1tppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1t5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwz1uZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwz1uppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwz1u5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwz1vJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwz1vZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwz1vppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwz1v5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwz1wJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1wZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwz1wppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1w5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1xZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwz1wZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1xppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1yJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwz1wZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1yZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1y5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwz1zJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1zZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1z5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwz1y5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz10JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz10ppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwz1y5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz105pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz11ZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwz1y5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz11ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz12JpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwz12ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz12ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz13JpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwz12JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz13ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz135pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwz12JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz14JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz14ppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwz12JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz145pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz15ZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwz12JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz15ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz16JpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwz12JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz16ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz165pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwz12JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz17JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz17ppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwz1oppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz175pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz18ZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwz18ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz185pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz19ZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz195pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwz1-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1-ZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz1-5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz1_ZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwz195pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz1_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2AJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwz195pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2AZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2A5pAEeOXzvVK2MY5wA" name="Money">
          <eAnnotations xmi:id="_cwz2BJpAEeOXzvVK2MY5wA" 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="_cwz2BppAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_LH01EApjEeOsLLpAQm2Lzw/54" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2B5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwz2CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2CJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2CppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwz2C5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2DJpAEeOXzvVK2MY5wA" 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="_cwz2DppAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cwz2HZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2D5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz2EJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwz2IZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz2EppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz2FJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz2FppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwz2JZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz2GJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2GppAEeOXzvVK2MY5wA" 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="_cwz2HZpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cwz2HppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2H5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwz2IZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwz2IppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwz2I5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwz2JJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwz2JZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwz2JppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwz2J5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwz2KJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2KZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwz2KppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2K5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2LZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwz2KZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2LppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2MJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwz2KZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2MZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2M5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwz2NJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2NZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2N5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwz2M5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2OJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2OppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwz2M5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2O5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2PZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwz2M5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2PppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2QJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwz2QZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2QppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2RJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwz2QJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2RZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2R5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwz2QJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2SJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2SppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwz2QJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2S5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2TZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwz2QJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2TppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2UJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwz2QJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2UZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2U5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwz2QJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2VJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2VppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwz2CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2V5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2WZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwz2WppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2W5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz2XZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2X5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwz2YJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2YZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2Y5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2ZZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwz2X5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2ZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2aJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwz2X5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2aZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2a5pAEeOXzvVK2MY5wA" name="Money">
          <eAnnotations xmi:id="_cwz2bJpAEeOXzvVK2MY5wA" 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="_cwz2bppAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_WOTPsApiEeOsLLpAQm2Lzw/53" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2b5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwz2cppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2cJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2cppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwz2c5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2dJpAEeOXzvVK2MY5wA" 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="_cwz2dppAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cwz2hZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2d5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz2eJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwz2iZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz2eppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz2fJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz2fppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwz2jZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz2gJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2gppAEeOXzvVK2MY5wA" 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="_cwz2hZpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cwz2hppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2h5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwz2iZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwz2ippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwz2i5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwz2jJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwz2jZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwz2jppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwz2j5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwz2kJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2kZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwz2kppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2k5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2lZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwz2kZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2lppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2mJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwz2kZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2mZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2m5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwz2nJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2nZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2n5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwz2m5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2oJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2oppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwz2m5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2o5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2pZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwz2m5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2pppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2qJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwz2qZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2qppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2rJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwz2qJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2rZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2r5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwz2qJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2sJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2sppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwz2qJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2s5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2tZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwz2qJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2tppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2uJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwz2qJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2uZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2u5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwz2qJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2vJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2vppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwz2cppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2v5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2wZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cwz2wppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2w5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz2xZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2x5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cwz2yJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2yZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2y5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2zZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cwz2x5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2zppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz20JpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cwz2x5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz20ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz205pAEeOXzvVK2MY5wA" name="Money">
          <eAnnotations xmi:id="_cwz21JpAEeOXzvVK2MY5wA" 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="_cwz21ppAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_3XvLMAphEeOsLLpAQm2Lzw/52" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz215pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cwz22ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz22JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz22ppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cwz225pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz23JpAEeOXzvVK2MY5wA" 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="_cwz23ppAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cwz27ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz235pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz24JpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cwz28ZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz24ppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz25JpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz25ppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cwz29ZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cwz26JpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz26ppAEeOXzvVK2MY5wA" 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="_cwz27ZpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cwz27ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz275pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwz28ZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cwz28ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwz285pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cwz29JpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cwz29ZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cwz29ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cwz295pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cwz2-JpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2-ZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cwz2-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz2-5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz2_ZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cwz2-ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz2_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz3AJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cwz2-ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz3AZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz3A5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cwz3BJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz3BZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz3B5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cwz3A5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz3CJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz3CppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cwz3A5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz3C5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz3DZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cwz3A5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz3DppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz3EJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cwz3EZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cwz3EppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz3FJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cwz3EJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz3FZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz3F5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cwz3EJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz3GJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz3GppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cwz3EJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz3G5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz3HZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cwz3EJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz3HppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz3IJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cwz3EJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz3IZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz3I5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cwz3EJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cwz3JJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cwz3JppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cwz22ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0a8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0a8ppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw0a85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0a9JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0a9ppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0a-JpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw0a-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0a-ppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0a_JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0a_ppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw0a-JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0a_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bAZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw0a-JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw0bBJpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_z5Oc8AphEeOsLLpAQm2Lzw/51" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bBZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw0bCJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bCJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw0bCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0bCppAEeOXzvVK2MY5wA" 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="_cw0bDJpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw0bG5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0bDppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw0bH5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0bEJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0bEppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0bFJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw0bI5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0bFppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0bGJpAEeOXzvVK2MY5wA" 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="_cw0bG5pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw0bHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0bHZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw0bH5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw0bIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw0bIZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw0bIppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw0bI5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw0bJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw0bJZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw0bJppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bJ5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw0bKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0bKZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bK5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw0bJ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bLppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw0bJ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bMZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw0bMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0bM5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bNZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw0bMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bOJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw0bMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bO5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw0bMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bPppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw0bP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0bQJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bQppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw0bPppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bRZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw0bPppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bSJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw0bPppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bS5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw0bPppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bTppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw0bPppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bUZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw0bPppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bVJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw0bCJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bV5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw0bWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0bWZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0bW5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bXZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw0bXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0bX5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0bYZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bY5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw0bXZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bZppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw0bXZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0baZpAEeOXzvVK2MY5wA" name="MoneyType">
          <eAnnotations xmi:id="_cw0bappAEeOXzvVK2MY5wA" 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="_cw0bbJpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_lJNQIApfEeOsLLpAQm2Lzw/50" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bbZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw0bcJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bcJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw0bcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0bcppAEeOXzvVK2MY5wA" 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="_cw0bdJpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw0bg5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0bdppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw0bh5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0beJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0beppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0bfJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw0bi5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0bfppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0bgJpAEeOXzvVK2MY5wA" 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="_cw0bg5pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw0bhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0bhZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw0bh5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw0biJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw0biZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw0bippAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw0bi5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw0bjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw0bjZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw0bjppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bj5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw0bkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0bkZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bk5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw0bj5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0blJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0blppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw0bj5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bl5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bmZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw0bmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0bm5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bnZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw0bmZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0boJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw0bmZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0boZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bo5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw0bmZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bpppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw0bp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0bqJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bqppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw0bpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bq5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0brZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw0bpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0brppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bsJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw0bpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bs5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw0bpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0btJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0btppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw0bpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0buZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw0bpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0buppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bvJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw0bcJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bv5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw0bwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0bwZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0bw5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bxZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw0bxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0bx5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0byZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0by5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw0bxZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0bzppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw0bxZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0bz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0b0ZpAEeOXzvVK2MY5wA" name="Object">
          <eAnnotations xmi:id="_cw0b0ppAEeOXzvVK2MY5wA" 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="_cw0b1JpAEeOXzvVK2MY5wA" name="ObjectSet">
          <eAnnotations xmi:id="_cw0b1ZpAEeOXzvVK2MY5wA" 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="_cw0b1ppAEeOXzvVK2MY5wA" name="object" ordered="false" lowerBound="2" upperBound="-1" eType="_cw0b0ZpAEeOXzvVK2MY5wA" containment="true"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0b2ZpAEeOXzvVK2MY5wA" name="Money">
          <eAnnotations xmi:id="_cw0b2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0b25pAEeOXzvVK2MY5wA" 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="_cw0b3ZpAEeOXzvVK2MY5wA" 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="_cw0b35pAEeOXzvVK2MY5wA" 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="_cw0b4ZpAEeOXzvVK2MY5wA" name="MoneyType">
          <eAnnotations xmi:id="_cw0b4ppAEeOXzvVK2MY5wA" 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="_cw0b5JpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_fMRXoApfEeOsLLpAQm2Lzw/49" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0b5ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw0b6JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0b5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0b6JpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw0b6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0b6ppAEeOXzvVK2MY5wA" 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="_cw0b7JpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw0b-5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0b7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0b7ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw0b_5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0b8JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0b8ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0b9JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw0cA5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0b9ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0b-JpAEeOXzvVK2MY5wA" 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="_cw0b-5pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw0b_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0b_ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw0b_5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw0cAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw0cAZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw0cAppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw0cA5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw0cBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw0cBZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw0cBppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cB5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw0cCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0cCZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cC5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw0cB5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cDppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw0cB5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cEZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw0cEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0cE5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cFZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw0cEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cGJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw0cEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cG5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw0cEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cHJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cHppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw0cH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0cIJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cIppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw0cHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cJZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw0cHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cKJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw0cHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cK5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw0cHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cLppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw0cHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cMZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw0cHppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cNJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw0b6JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cN5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw0cOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0cOZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0cO5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cPZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw0cPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0cP5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0cQZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cQ5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw0cPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cRppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw0cPZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cSZpAEeOXzvVK2MY5wA" name="Object">
          <eAnnotations xmi:id="_cw0cSppAEeOXzvVK2MY5wA" 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="_cw0cTJpAEeOXzvVK2MY5wA" name="ObjectSet">
          <eAnnotations xmi:id="_cw0cTZpAEeOXzvVK2MY5wA" 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="_cw0cTppAEeOXzvVK2MY5wA" name="object" ordered="false" lowerBound="2" upperBound="-1" eType="_cw0cSZpAEeOXzvVK2MY5wA" containment="true"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cUZpAEeOXzvVK2MY5wA" name="Money">
          <eAnnotations xmi:id="_cw0cUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0cU5pAEeOXzvVK2MY5wA" 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="_cw0cVZpAEeOXzvVK2MY5wA" 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="_cw0cV5pAEeOXzvVK2MY5wA" 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="_cw0cWZpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_LuDrcApfEeOsLLpAQm2Lzw/48" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cWppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw0cXZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cXZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw0cXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0cX5pAEeOXzvVK2MY5wA" 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="_cw0cYZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw0ccJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0cY5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw0cdJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0cZZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0cZ5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0caZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw0ceJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0ca5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0cbZpAEeOXzvVK2MY5wA" 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="_cw0ccJpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw0ccZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0ccppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw0cdJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw0cdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw0cdppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw0cd5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw0ceJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw0ceZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw0ceppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw0ce5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cfJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw0cfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0cfppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cgJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw0cfJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cg5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw0cfJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0chJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0chppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw0ch5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0ciJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cippAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw0chppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0ci5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cjZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw0chppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0ckJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw0chppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0ckZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0ck5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw0clJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0clZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cl5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw0ck5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cmppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw0ck5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cnZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw0ck5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cnppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0coJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw0ck5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0coZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0co5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw0ck5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cpppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw0ck5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cqZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw0cXZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0crJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw0crZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0crppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0csJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0csppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw0cs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0ctJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0ctppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cuJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw0csppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cu5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw0csppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0cvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cvppAEeOXzvVK2MY5wA" name="Object">
          <eAnnotations xmi:id="_cw0cv5pAEeOXzvVK2MY5wA" 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="_cw0cwZpAEeOXzvVK2MY5wA" name="ObjectSet">
          <eAnnotations xmi:id="_cw0cwppAEeOXzvVK2MY5wA" 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="_cw0cw5pAEeOXzvVK2MY5wA" name="object" ordered="false" lowerBound="2" upperBound="-1" eType="_cw0cvppAEeOXzvVK2MY5wA" containment="true"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0cxppAEeOXzvVK2MY5wA" name="Money">
          <eAnnotations xmi:id="_cw0cx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0cyJpAEeOXzvVK2MY5wA" 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="_cw0cyppAEeOXzvVK2MY5wA" 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="_cw0czJpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_62X8oApeEeOsLLpAQm2Lzw/47" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0czZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw0c0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0czppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0c0JpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw0c0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0c0ppAEeOXzvVK2MY5wA" 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="_cw0c1JpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw0c45pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0c1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0c1ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw0c55pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0c2JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0c2ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0c3JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw0c65pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0c3ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0c4JpAEeOXzvVK2MY5wA" 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="_cw0c45pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw0c5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0c5ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw0c55pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw0c6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw0c6ZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw0c6ppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw0c65pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw0c7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw0c7ZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw0c7ppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0c75pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw0c8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0c8ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0c85pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw0c75pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0c9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0c9ppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw0c75pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0c95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0c-ZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw0c-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0c-5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0c_ZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw0c-ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0c_ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dAJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw0c-ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0dAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dA5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw0c-ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0dBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dBppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw0dB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0dCJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dCppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw0dBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0dC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dDZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw0dBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0dDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dEJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw0dBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0dEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dE5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw0dBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0dFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dFppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw0dBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0dF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dGZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw0dBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0dGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dHJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw0c0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0dHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dH5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw0dIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0dIZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0dI5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dJZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw0dJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0dJ5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0dKZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dK5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw0dJZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0dLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dLppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw0dJZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0dL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dMZpAEeOXzvVK2MY5wA" name="Object">
          <eAnnotations xmi:id="_cw0dMppAEeOXzvVK2MY5wA" 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="_cw0dNJpAEeOXzvVK2MY5wA" name="ObjectSet">
          <eAnnotations xmi:id="_cw0dNZpAEeOXzvVK2MY5wA" 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="_cw0dNppAEeOXzvVK2MY5wA" name="object" ordered="false" lowerBound="2" upperBound="-1" eType="_cw0dMZpAEeOXzvVK2MY5wA" containment="true"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dOZpAEeOXzvVK2MY5wA" name="Money">
          <eAnnotations xmi:id="_cw0dOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0dO5pAEeOXzvVK2MY5wA" 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="_cw0dPZpAEeOXzvVK2MY5wA" name="EMoney">
          <eAnnotations xmi:id="_cw0dPppAEeOXzvVK2MY5wA" 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="_cw0dQJpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_JHLlQApeEeOsLLpAQm2Lzw/46" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dQZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw0dRJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0dQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dRJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw0dRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0dRppAEeOXzvVK2MY5wA" 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="_cw0dSJpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw0dV5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0dSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0dSppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw0dW5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0dTJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0dTppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0dUJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw0dX5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0dUppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0dVJpAEeOXzvVK2MY5wA" 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="_cw0dV5pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw0dWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0dWZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw0dW5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw0dXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw0dXZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw0dXppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw0dX5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw0dYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw0dYZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw0dYppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dY5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw0dZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0dZZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dZ5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw0dY5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0daJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dappAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw0dY5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0da5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dbZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw0dbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0db5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dcZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw0dbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0dcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0ddJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw0dbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0ddZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dd5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw0dbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0deJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0deppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw0de5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0dfJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dfppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw0deppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0df5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dgZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw0deppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0dgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dhJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw0deppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0dhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dh5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw0deppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0diJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dippAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw0deppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0di5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0djZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw0deppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0djppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dkJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw0dRJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0dkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dk5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw0dlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0dlZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0dl5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dmZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw0dmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0dm5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0dnZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dn5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw0dmZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0doJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0doppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw0dmZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0do5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dpZpAEeOXzvVK2MY5wA" name="Object">
          <eAnnotations xmi:id="_cw0dpppAEeOXzvVK2MY5wA" 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="_cw0dqJpAEeOXzvVK2MY5wA" name="ObjectSet">
          <eAnnotations xmi:id="_cw0dqZpAEeOXzvVK2MY5wA" 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="_cw0dqppAEeOXzvVK2MY5wA" name="object" ordered="false" lowerBound="2" upperBound="-1" eType="_cw0dpZpAEeOXzvVK2MY5wA" containment="true"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0drZpAEeOXzvVK2MY5wA" name="Money">
          <eAnnotations xmi:id="_cw0drppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0dr5pAEeOXzvVK2MY5wA" 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="_cw0dsZpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_EBhTAApeEeOsLLpAQm2Lzw/45" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dsppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw0dtZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0ds5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0dtZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw0dtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0dt5pAEeOXzvVK2MY5wA" 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="_cw0duZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw0dyJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0duppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0du5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw0dzJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0dvZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0dv5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0dwZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw0d0JpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0dw5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0dxZpAEeOXzvVK2MY5wA" 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="_cw0dyJpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw0dyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0dyppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw0dzJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw0dzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw0dzppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw0dz5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw0d0JpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw0d0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw0d0ppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw0d05pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0d1JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw0d1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0d1ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0d2JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw0d1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0d2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0d25pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw0d1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0d3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0d3ppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw0d35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0d4JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0d4ppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw0d3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0d45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0d5ZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw0d3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0d5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0d6JpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw0d3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0d6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0d65pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw0d7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0d7ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0d75pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw0d65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0d8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0d8ppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw0d65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0d85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0d9ZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw0d65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0d9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0d-JpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw0d65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0d-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0d-5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw0d65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0d_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0d_ppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw0d65pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0d_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0eAZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw0dtZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0eAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0eBJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw0eBZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0eBppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw0eCJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0eCppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw0eC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0eDJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw0eDppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0eEJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw0eCppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0eEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0eE5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw0eCppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0eFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0eFppAEeOXzvVK2MY5wA" name="Object">
          <eAnnotations xmi:id="_cw0eF5pAEeOXzvVK2MY5wA" 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="_cw0eGZpAEeOXzvVK2MY5wA" name="ObjectSet">
          <eAnnotations xmi:id="_cw0eGppAEeOXzvVK2MY5wA" 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="_cw0eG5pAEeOXzvVK2MY5wA" name="object" ordered="false" lowerBound="2" upperBound="-1" eType="_cw0eFppAEeOXzvVK2MY5wA" containment="true"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0eHppAEeOXzvVK2MY5wA" name="Money">
          <eAnnotations xmi:id="_cw0eH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw0eIJpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_vMVz4ApdEeOsLLpAQm2Lzw/44" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw0eIZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw1CAZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw0eIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CAZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw1CAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1CA5pAEeOXzvVK2MY5wA" 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="_cw1CBZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw1CFJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1CB5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw1CGJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1CCZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1CC5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1CDZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw1CHJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1CD5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1CEZpAEeOXzvVK2MY5wA" 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="_cw1CFJpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw1CFZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1CFppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1CGJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw1CGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1CGppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw1CG5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1CHJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw1CHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1CHppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw1CH5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CIJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw1CIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1CIppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CJJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw1CIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CJ5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw1CIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CKppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw1CK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1CLJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CLppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw1CKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CMZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw1CKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CNJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw1CKppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CN5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw1COJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1COZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CO5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw1CN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CPppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw1CN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CQZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw1CN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CRJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw1CN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CR5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw1CN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CSppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw1CN5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CTZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw1CAZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CUJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw1CUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1CUppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1CVJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CVppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw1CV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1CWJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1CWppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CXJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw1CVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CX5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw1CVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CYppAEeOXzvVK2MY5wA" name="Money">
          <eAnnotations xmi:id="_cw1CY5pAEeOXzvVK2MY5wA" 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="_cw1CZZpAEeOXzvVK2MY5wA" name="Object">
          <eAnnotations xmi:id="_cw1CZppAEeOXzvVK2MY5wA" 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="_cw1CaJpAEeOXzvVK2MY5wA" name="ObjectSet">
          <eAnnotations xmi:id="_cw1CaZpAEeOXzvVK2MY5wA" 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="_cw1CappAEeOXzvVK2MY5wA" name="object" ordered="false" lowerBound="2" upperBound="-1" eType="_cw1CZZpAEeOXzvVK2MY5wA" containment="true"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw1CbZpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_hWjIwApdEeOsLLpAQm2Lzw/43" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CbppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw1CcZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1Cb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CcZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw1CcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1Cc5pAEeOXzvVK2MY5wA" 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="_cw1CdZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw1ChJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1Cd5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw1CiJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1CeZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1Ce5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1CfZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw1CjJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1Cf5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1CgZpAEeOXzvVK2MY5wA" 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="_cw1ChJpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw1ChZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1ChppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1CiJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw1CiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1CippAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw1Ci5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1CjJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw1CjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1CjppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw1Cj5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CkJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw1CkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1CkppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1ClJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw1CkJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1ClZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1Cl5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw1CkJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CmppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw1Cm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1CnJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CnppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw1CmppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1Cn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CoZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw1CmppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CpJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw1CmppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1Cp5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw1CqJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1CqZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1Cq5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw1Cp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CrppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw1Cp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1Cr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CsZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw1Cp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CtJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw1Cp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CtZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1Ct5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw1Cp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CuppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw1Cp5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1Cu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CvZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw1CcZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CwJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw1CwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1CwppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1CxJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CxppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw1Cx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1CyJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1CyppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1CzJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw1CxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1CzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1Cz5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw1CxppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1C0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1C0ppAEeOXzvVK2MY5wA" name="Money">
          <eAnnotations xmi:id="_cw1C05pAEeOXzvVK2MY5wA" 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="_cw1C1ZpAEeOXzvVK2MY5wA" name="Object">
          <eAnnotations xmi:id="_cw1C1ppAEeOXzvVK2MY5wA" 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="_cw1C2JpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_KRTrgApdEeOsLLpAQm2Lzw/42" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1C2ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw1C3JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1C2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1C3JpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw1C3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1C3ppAEeOXzvVK2MY5wA" 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="_cw1C4JpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw1C75pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1C4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1C4ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw1C85pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1C5JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1C5ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1C6JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw1C95pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1C6ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1C7JpAEeOXzvVK2MY5wA" 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="_cw1C75pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw1C8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1C8ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1C85pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw1C9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1C9ZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw1C9ppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1C95pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw1C-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1C-ZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw1C-ppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1C-5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw1C_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1C_ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1C_5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw1C-5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DAppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw1C-5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DBZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw1DBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1DB5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DCZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw1DBZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DDJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw1DBZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DD5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw1DBZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DEppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw1DE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1DFJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DFppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw1DEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DGZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw1DEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DHJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw1DEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DH5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw1DEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DIppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw1DEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DJZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw1DEppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DKJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw1C3JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DK5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw1DLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1DLZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1DL5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DMZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw1DMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1DM5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1DNZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DN5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw1DMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DOppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw1DMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DPZpAEeOXzvVK2MY5wA" name="Money">
          <eAnnotations xmi:id="_cw1DPppAEeOXzvVK2MY5wA" 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="_cw1DQJpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_TZIBEApcEeOsLLpAQm2Lzw/41" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DQZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw1DRJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DRJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw1DRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1DRppAEeOXzvVK2MY5wA" 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="_cw1DSJpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw1DV5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1DSppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw1DW5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1DTJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1DTppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1DUJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw1DX5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1DUppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1DVJpAEeOXzvVK2MY5wA" 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="_cw1DV5pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw1DWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1DWZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1DW5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw1DXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1DXZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw1DXppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1DX5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw1DYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1DYZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw1DYppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DY5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw1DZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1DZZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DZ5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw1DY5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DappAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw1DY5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1Da5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DbZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw1DbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1Db5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DcZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw1DbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DdJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw1DbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1Dd5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw1DbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DeJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DeppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw1De5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1DfJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DfppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw1DeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1Df5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DgZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw1DeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DhJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw1DeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DhZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1Dh5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw1DeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DiJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DippAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw1DeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1Di5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DjZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw1DeppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DkJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw1DRJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1Dk5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw1DlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1DlZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1Dl5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DmZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw1DmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1Dm5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1DnZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1Dn5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw1DmZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DoppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw1DmZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1Do5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DpZpAEeOXzvVK2MY5wA" name="Money">
          <eAnnotations xmi:id="_cw1DpppAEeOXzvVK2MY5wA" 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="_cw1DqJpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_C3XJ0ApaEeOsLLpAQm2Lzw/40" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DqZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw1DrJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1DrJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw1DrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1DrppAEeOXzvVK2MY5wA" 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="_cw1DsJpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw1Dv5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1DsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1DsppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw1Dw5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1DtJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1DtppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1DuJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw1Dx5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1DuppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1DvJpAEeOXzvVK2MY5wA" 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="_cw1Dv5pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw1DwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1DwZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1Dw5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw1DxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1DxZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw1DxppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1Dx5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw1DyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1DyZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw1DyppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1Dy5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw1DzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1DzZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1Dz5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw1Dy5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1D0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1D0ppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw1Dy5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1D05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1D1ZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw1D1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1D15pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1D2ZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw1D1ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1D2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1D3JpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw1D1ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1D3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1D35pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw1D1ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1D4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1D4ppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw1D45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1D5JpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1D5ppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw1D4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1D55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1D6ZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw1D4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1D6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1D7JpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw1D4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1D7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1D75pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw1D4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1D8JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1D8ppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw1D4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1D85pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1D9ZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw1D4ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1D9ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1D-JpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw1DrJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1D-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1D-5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw1D_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1D_ZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1D_5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EAZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw1EAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1EA5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1EBZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EB5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw1EAZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1ECJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1ECppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw1EAZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw1EDZpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_cQMPwApZEeOsLLpAQm2Lzw/39" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EDppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw1EEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1ED5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EEZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw1EEppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1EE5pAEeOXzvVK2MY5wA" 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="_cw1EFZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw1EJJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1EF5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw1EKJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1EGZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1EG5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1EHZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw1ELJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1EH5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1EIZpAEeOXzvVK2MY5wA" 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="_cw1EJJpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw1EJZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1EJppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1EKJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw1EKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1EKppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw1EK5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1ELJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw1ELZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1ELppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw1EL5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EMJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw1EMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1EMppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1ENJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw1EMJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1ENZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EN5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw1EMJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EOppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw1EO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1EPJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EPppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw1EOppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EQZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw1EOppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1ERJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw1EOppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1ERZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1ER5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw1ESJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1ESZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1ES5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw1ER5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1ETJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1ETppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw1ER5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1ET5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EUZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw1ER5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EVJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw1ER5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EV5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw1ER5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EWppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw1ER5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EXZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw1EEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EYJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw1EYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1EYppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1EZJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EZppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw1EZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1EaJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1EappAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EbJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw1EZppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1Eb5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw1EZppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EcJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw1EcppAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_N1BmsApZEeOsLLpAQm2Lzw/38" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1Ec5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw1EdppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EdppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw1Ed5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1EeJpAEeOXzvVK2MY5wA" 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="_cw1EeppAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw1EiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1Ee5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1EfJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw1EjZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1EfppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1EgJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1EgppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw1EkZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1EhJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1EhppAEeOXzvVK2MY5wA" 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="_cw1EiZpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw1EippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1Ei5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1EjZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw1EjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1Ej5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw1EkJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1EkZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw1EkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1Ek5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw1ElJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1ElZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw1ElppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1El5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EmZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw1ElZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EnJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw1ElZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1En5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw1EoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1EoZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="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="_cw1Eo5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EpZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw1En5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EpppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EqJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw1En5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1Eq5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw1En5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1ErJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1ErppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw1Er5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1EsJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EsppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw1ErppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1Es5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EtZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw1ErppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EuJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw1ErppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1Eu5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw1ErppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EvppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw1ErppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1Ev5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EwZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw1ErppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1EwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1ExJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw1EdppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1ExZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1Ex5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw1EyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1EyZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1Ey5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1EzZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw1EzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1Ez5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1E0ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1E05pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw1EzZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1E1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1E1ppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw1EzZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1E15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw1E2ZpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_YEYzIApYEeOsLLpAQm2Lzw/37" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1E2ppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw1E3ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1E25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1E3ZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw1E3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1E35pAEeOXzvVK2MY5wA" 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="_cw1E4ZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw1E8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1E4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1E45pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw1E9JpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1E5ZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1E55pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1E6ZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw1E-JpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1E65pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1E7ZpAEeOXzvVK2MY5wA" 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="_cw1E8JpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw1E8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1E8ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1E9JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw1E9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1E9ppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw1E95pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1E-JpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw1E-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1E-ppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw1E-5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1E_JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw1E_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1E_ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1FAJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw1E_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1FAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1FA5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw1E_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1FBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1FBppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw1FB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1FCJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="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="_cw1FCppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1FDJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw1FBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1FDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1FD5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw1FBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1FEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1FEppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw1FBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1FE5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1FFZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw1FFppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1FF5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1FGZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw1FFZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1FGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1FHJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw1FFZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1FHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pEJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw1FFZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pE5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw1FFZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pFppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw1FFZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pGZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw1FFZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pHJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw1E3ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pH5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw1pIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1pIZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1pI5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pJZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw1pJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1pJ5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1pKZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pK5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw1pJZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pLJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pLppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw1pJZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw1pMZpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_O-j3EApYEeOsLLpAQm2Lzw/36" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pMppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw1pNZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pNZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw1pNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1pN5pAEeOXzvVK2MY5wA" 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="_cw1pOZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw1pSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1pO5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw1pTJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1pPZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1pP5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1pQZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw1pUJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1pQ5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1pRZpAEeOXzvVK2MY5wA" 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="_cw1pSJpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw1pSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1pSppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1pTJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw1pTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1pTppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw1pT5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1pUJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw1pUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1pUppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw1pU5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pVJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw1pVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1pVppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pWJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw1pVJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pW5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw1pVJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pXppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw1pX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1pYJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="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="_cw1pYppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pZJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw1pXppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pZ5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw1pXppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1paJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pappAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw1pXppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pbZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw1pbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1pb5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pcZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw1pbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pdJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw1pbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pd5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw1pbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1peJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1peppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw1pbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pe5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pfZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw1pbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pgJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw1pbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pg5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw1pNZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1phJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1phppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw1ph5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1piJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1pippAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pjJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw1pjZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1pjppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1pkJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pkppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw1pjJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1plZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw1pjJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1plppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw1pmJpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_K_eLUApYEeOsLLpAQm2Lzw/35" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pmZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw1pnJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pnJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw1pnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1pnppAEeOXzvVK2MY5wA" 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="_cw1poJpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw1pr5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1poZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1poppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw1ps5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1ppJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1ppppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1pqJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw1pt5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1pqppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1prJpAEeOXzvVK2MY5wA" 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="_cw1pr5pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw1psJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1psZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1ps5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw1ptJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1ptZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw1ptppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1pt5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw1puJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1puZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw1puppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pu5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw1pvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1pvZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pv5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw1pu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pwJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pwppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw1pu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pxZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw1pxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1px5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="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="_cw1pyZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1py5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw1pxZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1pzppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw1pxZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1pz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1p0ZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw1pxZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1p0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1p1JpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw1p1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1p1ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1p2JpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw1p1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1p2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1p25pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw1p1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1p3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1p3ppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw1p1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1p35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1p4ZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw1p1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1p4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1p5JpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw1p1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1p5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1p55pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw1p1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1p6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1p6ppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw1pnJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1p65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1p7ZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw1p7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1p75pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1p8ZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1p85pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw1p9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1p9ZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1p95pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1p-ZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw1p85pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1p-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1p_JpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw1p85pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1p_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw1p_5pAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_CA_0cApYEeOsLLpAQm2Lzw/34" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qAJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw1qA5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qA5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw1qBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1qBZpAEeOXzvVK2MY5wA" 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="_cw1qB5pAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw1qFppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1qCZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw1qGppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1qC5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1qDZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1qD5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw1qHppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1qEZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1qE5pAEeOXzvVK2MY5wA" 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="_cw1qFppAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw1qF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1qGJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1qGppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw1qG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1qHJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw1qHZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1qHppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw1qH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1qIJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw1qIZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qIppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw1qI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1qJJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qJppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw1qIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qKZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw1qIppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qLJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw1qLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1qLppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="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="_cw1qMJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qMppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw1qLJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qNZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw1qLJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qOJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw1qLJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qO5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw1qPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1qPZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qP5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw1qO5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qQppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw1qO5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qRZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw1qO5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qSJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw1qO5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qS5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw1qO5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qTppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw1qO5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qUZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw1qA5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qVJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw1qVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1qVppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1qWJpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qWppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw1qW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1qXJpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1qXppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qYJpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw1qWppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qY5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw1qWppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw1qZppAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/__lT1IApXEeOsLLpAQm2Lzw/33" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qZ5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw1qappAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qaJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qappAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw1qa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1qbJpAEeOXzvVK2MY5wA" 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="_cw1qbppAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw1qfZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1qcJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw1qgZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1qcppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1qdJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1qdppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw1qhZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1qeJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1qeppAEeOXzvVK2MY5wA" 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="_cw1qfZpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw1qfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1qf5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1qgZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw1qgppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1qg5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw1qhJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1qhZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw1qhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1qh5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw1qiJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qiZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw1qippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1qi5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qjZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw1qiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qjppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qkJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw1qiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qkZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qk5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw1qlJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1qlZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="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="_cw1ql5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qmZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw1qk5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qmppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qnJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw1qk5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qn5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw1qk5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qoJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qoppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw1qo5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1qpJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qpppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw1qoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qqZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw1qoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qqppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qrJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw1qoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qr5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw1qoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qsppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw1qoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qtZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw1qoppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1quJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw1qappAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1quZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qu5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw1qvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1qvZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1qv5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qwZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw1qwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1qw5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1qxZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qx5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw1qwZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qyppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw1qwZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw1qzZpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_Lqrg8ApXEeOsLLpAQm2Lzw/32" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1qzppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw1q0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1qz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1q0ZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw1q0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1q05pAEeOXzvVK2MY5wA" 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="_cw1q1ZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw1q5JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1q1ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1q15pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw1q6JpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1q2ZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1q25pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1q3ZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw1q7JpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1q35pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1q4ZpAEeOXzvVK2MY5wA" 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="_cw1q5JpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw1q5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1q5ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1q6JpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw1q6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1q6ppAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw1q65pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1q7JpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw1q7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1q7ppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw1q75pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1q8JpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw1q8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1q8ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1q9JpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw1q8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1q9ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1q95pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw1q8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1q-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1q-ppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw1q-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1q_JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="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="_cw1q_ppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rAJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw1q-ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rA5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw1q-ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rBppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw1q-ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rCZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw1rCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1rC5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rDZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw1rCZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rDppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rEJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw1rCZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rEZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rE5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw1rCZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rFppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw1rCZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rGZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw1rCZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rHJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw1rCZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rH5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw1q0ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rIppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw1rI5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1rJJpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1rJppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rKJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw1rKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1rKppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1rLJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rLppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw1rKJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rMZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw1rKJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rMppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw1rNJpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_-vSokApWEeOsLLpAQm2Lzw/31" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rNZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw1rOJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rOJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw1rOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1rOppAEeOXzvVK2MY5wA" 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="_cw1rPJpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw1rS5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1rPppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw1rT5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1rQJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1rQppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1rRJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw1rU5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1rRppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1rSJpAEeOXzvVK2MY5wA" 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="_cw1rS5pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw1rTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1rTZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1rT5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw1rUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1rUZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw1rUppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1rU5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw1rVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1rVZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw1rVppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rV5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw1rWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1rWZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rW5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw1rV5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rXppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw1rV5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rYZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw1rYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1rY5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="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="_cw1rZZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rZ5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw1rYZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1raJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rappAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw1rYZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1ra5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rbZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw1rYZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rcJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw1rcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1rcppAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rdJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw1rcJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rd5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw1rcJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1reJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1reppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw1rcJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1re5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rfZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw1rcJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rfppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rgJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw1rcJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rg5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw1rcJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rhppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw1rOJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1riZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw1rippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1ri5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1rjZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rj5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw1rkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1rkZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1rk5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rlZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw1rj5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rmJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw1rj5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw1rm5pAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_nK-psApWEeOsLLpAQm2Lzw/30" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rnJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw1rn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rn5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw1roJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1roZpAEeOXzvVK2MY5wA" 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="_cw1ro5pAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw1rsppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rpJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1rpZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw1rtppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1rp5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1rqZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1rq5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw1ruppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1rrZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1rr5pAEeOXzvVK2MY5wA" 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="_cw1rsppAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw1rs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1rtJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1rtppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw1rt5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1ruJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw1ruZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1ruppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw1ru5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1rvJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw1rvZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rvppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw1rv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1rwJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rwppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw1rvppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rxZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw1rvppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rxppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1ryJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw1ryZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1ryppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="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="_cw1rzJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1rzppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw1ryJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1rz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1r0ZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw1ryJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1r0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1r1JpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw1ryJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1r1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1r15pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw1r2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1r2ZpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1r25pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw1r15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1r3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1r3ppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw1r15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1r35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1r4ZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw1r15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1r4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1r5JpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw1r15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1r5ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1r55pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw1r15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1r6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1r6ppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw1r15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1r65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1r7ZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw1rn5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1r7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1r8JpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw1r8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1r8ppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1r9JpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1r9ppAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw1r95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1r-JpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1r-ppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1r_JpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw1r9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1r_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1r_5pAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw1r9ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1sAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw1sAppAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_QUVpIApWEeOsLLpAQm2Lzw/29" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sA5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw1sBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1sBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sBppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw1sB5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1sCJpAEeOXzvVK2MY5wA" 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="_cw1sCppAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw1sGZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1sC5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1sDJpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw1sHZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1sDppAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1sEJpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1sEppAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw1sIZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1sFJpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1sFppAEeOXzvVK2MY5wA" 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="_cw1sGZpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw1sGppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1sG5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1sHZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw1sHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1sH5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw1sIJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw1sIZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw1sIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw1sI5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw1sJJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sJZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw1sJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1sJ5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sKZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw1sJZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1sKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sLJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw1sJZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1sLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sL5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw1sMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1sMZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="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="_cw1sM5pAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sNZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw1sL5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1sNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sOJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw1sL5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1sOZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sO5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw1sL5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1sPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sPppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw1sP5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1sQJpAEeOXzvVK2MY5wA" name="base_ObjectNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ObjectNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sQppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw1sPppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1sQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sRZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw1sPppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1sRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sSJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw1sPppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1sSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sS5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw1sPppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1sTJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sTppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw1sPppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1sT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sUZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw1sPppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1sUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sVJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw1sBppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1sVZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sV5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw1sWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1sWZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1sW5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sXZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw1sXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1sX5pAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1sYZpAEeOXzvVK2MY5wA" 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="_cw1sY5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw1sXZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1sZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sZppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw1sXZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1sZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw1saZpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_HimWcApFEeOuJJkXVrUtsQ/28" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sappAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw1sbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1sa5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw1sbZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw1sbppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1sb5pAEeOXzvVK2MY5wA" 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="_cw1scZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw2QIZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw1scppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1sc5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw2QJZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1sdZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1sd5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1seZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw2QKZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw1se5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw1sfZpAEeOXzvVK2MY5wA" 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="_cw2QIZpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw2QIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2QI5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw2QJZpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw2QJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw2QJ5pAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw2QKJpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw2QKZpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw2QKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw2QK5pAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw2QLJpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QLZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw2QLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QL5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw2QLZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2QMZpAEeOXzvVK2MY5wA" 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="_cw2QNJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw2QLZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QNZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2QNppAEeOXzvVK2MY5wA" 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="_cw2QOZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw2QOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2QO5pAEeOXzvVK2MY5wA" 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="_cw2QPZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QP5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw2QOZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QQppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw2QOZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QRZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw2QOZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QSJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw2QSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2QSppAEeOXzvVK2MY5wA" 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="_cw2QTJpAEeOXzvVK2MY5wA" 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="_cw2QTppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QUJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw2QSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QUZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QU5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw2QSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QVppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw2QSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QWZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw2QSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QXJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw2QSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QX5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw2QSJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QYppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw1sbZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QY5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QZZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw2QZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2QZ5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2QaZpAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2Qa5pAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw2QbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2QbZpAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2Qb5pAEeOXzvVK2MY5wA" 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="_cw2QcZpAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw2Qa5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QdJpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw2Qa5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw2Qd5pAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_FQmysAilEeOcM621vUJLnw/27" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QeJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw2Qe5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2Qe5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw2QfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2QfZpAEeOXzvVK2MY5wA" 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="_cw2Qf5pAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw2QjppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2QgZpAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw2QkppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2Qg5pAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2QhZpAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2Qh5pAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw2QlppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2QiZpAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2Qi5pAEeOXzvVK2MY5wA" 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="_cw2QjppAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw2Qj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2QkJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw2QkppAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw2Qk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw2QlJpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw2QlZpAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw2QlppAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw2Ql5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw2QmJpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw2QmZpAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QmppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw2Qm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QnJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw2QmppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2QnppAEeOXzvVK2MY5wA" 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="_cw2QoZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw2QmppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2Qo5pAEeOXzvVK2MY5wA" 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="_cw2QpppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw2Qp5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2QqJpAEeOXzvVK2MY5wA" 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="_cw2QqppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QrJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw2QpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QrZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2Qr5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw2QpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QsppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw2QpppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2Qs5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QtZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw2QtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2Qt5pAEeOXzvVK2MY5wA" 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="_cw2QuZpAEeOXzvVK2MY5wA" 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="_cw2Qu5pAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QvZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw2QtZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QwJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw2QtZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QwZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2Qw5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw2QtZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QxppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw2QtZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2Qx5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QyZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw2QtZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QyppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2QzJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw2QtZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2QzZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2Qz5pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw2Qe5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2Q0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2Q0ppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw2Q05pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2Q1JpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2Q1ppAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2Q2JpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw2Q2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2Q2ppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2Q3JpAEeOXzvVK2MY5wA" 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="_cw2Q3ppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw2Q2JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2Q35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2Q4ZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw2Q2JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2Q4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw2Q5JpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_EoC14AaMEeO0mcsjvlKFSA/26" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2Q5ZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw2Q6JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2Q5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2Q6JpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw2Q6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2Q6ppAEeOXzvVK2MY5wA" 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="_cw2Q7JpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw2Q-5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2Q7ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2Q7ppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw2Q_5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2Q8JpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2Q8ppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2Q9JpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw2RA5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2Q9ppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2Q-JpAEeOXzvVK2MY5wA" 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="_cw2Q-5pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw2Q_JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2Q_ZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw2Q_5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw2RAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw2RAZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw2RAppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw2RA5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw2RBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw2RBZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw2RBppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RB5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw2RCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RCZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw2RB5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2RC5pAEeOXzvVK2MY5wA" 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="_cw2RDppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw2RB5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2REJpAEeOXzvVK2MY5wA" 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="_cw2RE5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw2RFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2RFZpAEeOXzvVK2MY5wA" 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="_cw2RF5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw2RE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RGppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw2RE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RHZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw2RE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RIJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw2RIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2RIppAEeOXzvVK2MY5wA" 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="_cw2RJJpAEeOXzvVK2MY5wA" 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="_cw2RJppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw2RIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RKZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw2RIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RLJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw2RIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RL5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw2RIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RMppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw2RIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RNZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw2RIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2ROJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw2Q6JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2ROZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RO5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw2RPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2RPZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2RP5pAEeOXzvVK2MY5wA" name="context_class" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RQZpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw2RQppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2RQ5pAEeOXzvVK2MY5wA" 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="_cw2RRZpAEeOXzvVK2MY5wA" 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="_cw2RR5pAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw2RQZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RSppAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw2RQZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RS5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw2RTZpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_--_isAaLEeO0mcsjvlKFSA/25" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RTppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw2RUZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RT5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RUZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw2RUppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2RU5pAEeOXzvVK2MY5wA" 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="_cw2RVZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw2RZJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2RV5pAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw2RaJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2RWZpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2RW5pAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2RXZpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw2RbJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2RX5pAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2RYZpAEeOXzvVK2MY5wA" 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="_cw2RZJpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw2RZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2RZppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw2RaJpAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw2RaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw2RappAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw2Ra5pAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw2RbJpAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw2RbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw2RbppAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw2Rb5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RcJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw2RcZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RcppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw2RcJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2Rc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2RdJpAEeOXzvVK2MY5wA" 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="_cw2Rd5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw2RcJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2ReJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2ReZpAEeOXzvVK2MY5wA" 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="_cw2RfJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw2RfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2RfppAEeOXzvVK2MY5wA" 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="_cw2RgJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw2RfJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RgZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2Rg5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw2RfJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RhJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RhppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw2RfJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2Rh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RiZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw2RippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2Ri5pAEeOXzvVK2MY5wA" 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="_cw2RjZpAEeOXzvVK2MY5wA" 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="_cw2Rj5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw2RiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RkppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw2RiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2Rk5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RlZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw2RiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RmJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw2RiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2Rm5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw2RiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RnJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RnppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw2RiZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2Rn5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RoZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw2RUZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RpJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw2RpZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2RpppAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//ActivityParameterNode"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RqJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw2RqZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2RqppAEeOXzvVK2MY5wA" 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="_cw2RrJpAEeOXzvVK2MY5wA" 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="_cw2RrppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw2RqJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2Rr5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RsZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw2RqJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RsppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw2RtJpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_tOqG4AaGEeO3jd8H9P4Pcg/24" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RtZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw2RuJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RtppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2RuJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw2RuZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2RuppAEeOXzvVK2MY5wA" 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="_cw2RvJpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw2Ry5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2RvZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2RvppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw2Rz5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2RwJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2RwppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2RxJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw2R05pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2RxppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2RyJpAEeOXzvVK2MY5wA" 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="_cw2Ry5pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw2RzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2RzZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw2Rz5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw2R0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw2R0ZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw2R0ppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw2R05pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw2R1JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw2R1ZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw2R1ppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2R15pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw2R2JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2R2ZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw2R15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2R2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2R25pAEeOXzvVK2MY5wA" 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="_cw2R3ppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw2R15pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2R35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2R4JpAEeOXzvVK2MY5wA" 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="_cw2R45pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw2R5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2R5ZpAEeOXzvVK2MY5wA" 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="_cw2R55pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw2R45pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2R6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2R6ppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw2R45pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2R65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2R7ZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw2R45pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2R7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2R8JpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw2R8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2R8ppAEeOXzvVK2MY5wA" 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="_cw2R9JpAEeOXzvVK2MY5wA" 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="_cw2R9ppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw2R8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2R95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2R-ZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw2R8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2R-ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2R_JpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw2R8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2R_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2R_5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw2R8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SAJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SAppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw2R8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SA5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SBZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw2R8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SCJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw2RuJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SC5pAEeOXzvVK2MY5wA" name="Input_Context">
          <eAnnotations xmi:id="_cw2SDJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cw2SDZpAEeOXzvVK2MY5wA" source="duplicates">
            <contents xmi:type="ecore:EReference" xmi:id="_cw2SDppAEeOXzvVK2MY5wA" name="activity" ordered="false" upperBound="-1">
              <eAnnotations xmi:id="_cw2SD5pAEeOXzvVK2MY5wA" 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="_cw2SEZpAEeOXzvVK2MY5wA" 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="_cw2SE5pAEeOXzvVK2MY5wA" name="context" ordered="false" lowerBound="1" eType="_cw2SFppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SFppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw2SF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SGJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw2SGZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2SGppAEeOXzvVK2MY5wA" 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="_cw2SHJpAEeOXzvVK2MY5wA" 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="_cw2SHppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw2SGJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SH5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SIZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw2SGJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw2SJJpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_fIInMAZ9EeOcdYCs3l6XnA/23" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SJZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw2SKJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SJppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SKJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw2SKZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2SKppAEeOXzvVK2MY5wA" 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="_cw2SLJpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw2SO5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2SLppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw2SP5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2SMJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2SMppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2SNJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw2SQ5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2SNppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2SOJpAEeOXzvVK2MY5wA" 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="_cw2SO5pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw2SPJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2SPZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw2SP5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw2SQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw2SQZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw2SQppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw2SQ5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw2SRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw2SRZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw2SRppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SR5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw2SSJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SSZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw2SR5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2SS5pAEeOXzvVK2MY5wA" 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="_cw2STppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw2SR5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2ST5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2SUJpAEeOXzvVK2MY5wA" 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="_cw2SU5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw2SVJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2SVZpAEeOXzvVK2MY5wA" 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="_cw2SV5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw2SU5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SWJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SWppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw2SU5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SXZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw2SU5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SXppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SYJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw2SYZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2SYppAEeOXzvVK2MY5wA" 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="_cw2SZJpAEeOXzvVK2MY5wA" 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="_cw2SZppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw2SYJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SaZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw2SYJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SappAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SbJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw2SYJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2Sb5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw2SYJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2ScJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2ScppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw2SYJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2Sc5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SdZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw2SYJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SeJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw2SKJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2Se5pAEeOXzvVK2MY5wA" name="Input_Context">
          <eAnnotations xmi:id="_cw2SfJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cw2SfZpAEeOXzvVK2MY5wA" source="duplicates">
            <contents xmi:type="ecore:EReference" xmi:id="_cw2SfppAEeOXzvVK2MY5wA" name="activity" ordered="false" upperBound="-1">
              <eAnnotations xmi:id="_cw2Sf5pAEeOXzvVK2MY5wA" 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="_cw2SgZpAEeOXzvVK2MY5wA" 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="_cw2Sg5pAEeOXzvVK2MY5wA" name="context" ordered="false" lowerBound="1" eType="_cw2ShppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2ShppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw2Sh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SiJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw2SiZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2SippAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2SjJpAEeOXzvVK2MY5wA" 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="_cw2SjppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw2SiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2Sj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SkZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw2SiJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw2SlJpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_GFEn0AZ8EeOcdYCs3l6XnA/22" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SlZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw2SmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SlppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SmJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw2SmZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2SmppAEeOXzvVK2MY5wA" 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="_cw2SnJpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw2Sq5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SnZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2SnppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw2Sr5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2SoJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2SoppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2SpJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw2Ss5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2SpppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2SqJpAEeOXzvVK2MY5wA" 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="_cw2Sq5pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw2SrJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2SrZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw2Sr5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw2SsJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw2SsZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw2SsppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw2Ss5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw2StJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw2StZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw2StppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2St5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw2SuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SuZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw2St5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SuppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2Su5pAEeOXzvVK2MY5wA" 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="_cw2SvppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw2St5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2Sv5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2SwJpAEeOXzvVK2MY5wA" 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="_cw2Sw5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw2SxJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2SxZpAEeOXzvVK2MY5wA" 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="_cw2Sx5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw2Sw5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SyppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw2Sw5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2Sy5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2SzZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw2Sw5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2SzppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2S0JpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw2S0ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2S0ppAEeOXzvVK2MY5wA" 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="_cw2S1JpAEeOXzvVK2MY5wA" 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="_cw2S1ppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw2S0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2S15pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2S2ZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw2S0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2S2ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2S3JpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw2S0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2S3ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2S35pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw2S0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2S4JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2S4ppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw2S0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2S45pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2S5ZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw2S0JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2S5ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2S6JpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw2SmJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2S6ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2S65pAEeOXzvVK2MY5wA" name="Input_Context">
          <eAnnotations xmi:id="_cw2S7JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cw2S7ZpAEeOXzvVK2MY5wA" source="duplicates">
            <contents xmi:type="ecore:EReference" xmi:id="_cw2S7ppAEeOXzvVK2MY5wA" name="activity" ordered="false" upperBound="-1">
              <eAnnotations xmi:id="_cw2S75pAEeOXzvVK2MY5wA" 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="_cw2S8ZpAEeOXzvVK2MY5wA" 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="_cw2S85pAEeOXzvVK2MY5wA" name="context" ordered="false" lowerBound="1" eType="_cw2S9ppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2S9ppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw2S95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2S-JpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw2S-ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2S-ppAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2S_JpAEeOXzvVK2MY5wA" 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="_cw2S_ppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw2S-JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2S_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TAZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw2S-JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2TAppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw2TBJpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_fHjKoAZ4EeOcdYCs3l6XnA/21" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TBZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw2TCJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2TBppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TCJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw2TCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2TCppAEeOXzvVK2MY5wA" 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="_cw2TDJpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw2TG5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2TDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2TDppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw2TH5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2TEJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2TEppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2TFJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw2TI5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw2TFppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2TGJpAEeOXzvVK2MY5wA" 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="_cw2TG5pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw2THJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2THZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw2TH5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw2TIJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw2TIZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw2TIppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw2TI5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw2TJJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw2TJZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw2TJppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TJ5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw2TKJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TKZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw2TJ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2TKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2TK5pAEeOXzvVK2MY5wA" 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="_cw2TLppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw2TJ5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2TL5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2TMJpAEeOXzvVK2MY5wA" 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="_cw2TM5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw2TNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2TNZpAEeOXzvVK2MY5wA" 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="_cw2TN5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw2TM5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2TOJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TOppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw2TM5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2TO5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TPZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw2TM5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2TPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TQJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw2TQZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2TQppAEeOXzvVK2MY5wA" 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="_cw2TRJpAEeOXzvVK2MY5wA" 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="_cw2TRppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw2TQJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2TR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TSZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw2TQJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2TSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TTJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw2TQJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2TTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TT5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw2TQJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2TUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TUppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw2TQJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2TU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TVZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw2TQJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2TVppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TWJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw2TCJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2TWZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TW5pAEeOXzvVK2MY5wA" name="Input_Context">
          <eAnnotations xmi:id="_cw2TXJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cw2TXZpAEeOXzvVK2MY5wA" source="duplicates">
            <contents xmi:type="ecore:EReference" xmi:id="_cw2TXppAEeOXzvVK2MY5wA" name="activity" ordered="false" upperBound="-1">
              <eAnnotations xmi:id="_cw2TX5pAEeOXzvVK2MY5wA" 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="_cw2TYZpAEeOXzvVK2MY5wA" 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="_cw2TY5pAEeOXzvVK2MY5wA" name="context" ordered="false" lowerBound="1" eType="_cw2TZppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TZppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw2TZ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TaJpAEeOXzvVK2MY5wA" name="logical_expression">
          <eAnnotations xmi:id="_cw2TaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FwppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2TappAEeOXzvVK2MY5wA" name="constraint" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Constraint"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2TbJpAEeOXzvVK2MY5wA" 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="_cw2TbppAEeOXzvVK2MY5wA" name="formula" eSuperTypes="_cw2TaJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2Tb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F15pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TcZpAEeOXzvVK2MY5wA" name="constraint" eSuperTypes="_cw2TaJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2TcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4F6ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw2TdJpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_uciNEAZ3EeOcdYCs3l6XnA/20" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2TdZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw23MJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2TdppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23MJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw23MZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw23MppAEeOXzvVK2MY5wA" 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="_cw23NJpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw23Q5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23NZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw23NppAEeOXzvVK2MY5wA" name="agent_type" ordered="false" eType="_cw23R5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw23OJpAEeOXzvVK2MY5wA" name="question" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw23OppAEeOXzvVK2MY5wA" name="source" ordered="false">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw23PJpAEeOXzvVK2MY5wA" name="type" ordered="false" eType="_cw23S5pAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw23PppAEeOXzvVK2MY5wA" name="parameters" ordered="false" upperBound="-1">
            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
          </eStructuralFeatures>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw23QJpAEeOXzvVK2MY5wA" 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="_cw23Q5pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw23RJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw23RZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw23R5pAEeOXzvVK2MY5wA" name="Agent_Type">
          <eAnnotations xmi:id="_cw23SJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FqppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw23SZpAEeOXzvVK2MY5wA" name="OFFICER"/>
          <eLiterals xmi:id="_cw23SppAEeOXzvVK2MY5wA" name="OTHER" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cw23S5pAEeOXzvVK2MY5wA" name="Query_Type">
          <eAnnotations xmi:id="_cw23TJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FtppAEeOXzvVK2MY5wA"/>
          <eLiterals xmi:id="_cw23TZpAEeOXzvVK2MY5wA" name="FIXED_VALUE"/>
          <eLiterals xmi:id="_cw23TppAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" value="1"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23T5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw23UJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23UZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw23T5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23UppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw23U5pAEeOXzvVK2MY5wA" 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="_cw23VppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw23T5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23V5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw23WJpAEeOXzvVK2MY5wA" 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="_cw23W5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw23XJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw23XZpAEeOXzvVK2MY5wA" 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="_cw23X5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw23W5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23YJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23YppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw23W5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23Y5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23ZZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw23W5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23ZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23aJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw23aZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw23appAEeOXzvVK2MY5wA" 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="_cw23bJpAEeOXzvVK2MY5wA" 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="_cw23bppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw23aJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23b5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23cZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw23aJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23cppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23dJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw23aJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23dZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23d5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw23aJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23eJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23eppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw23aJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23e5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23fZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw23aJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23fppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23gJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw23MJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23gZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23g5pAEeOXzvVK2MY5wA" name="Input_Context">
          <eAnnotations xmi:id="_cw23hJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cw23hZpAEeOXzvVK2MY5wA" source="duplicates">
            <contents xmi:type="ecore:EReference" xmi:id="_cw23hppAEeOXzvVK2MY5wA" name="activity" ordered="false" upperBound="-1">
              <eAnnotations xmi:id="_cw23h5pAEeOXzvVK2MY5wA" 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="_cw23iZpAEeOXzvVK2MY5wA" 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="_cw23i5pAEeOXzvVK2MY5wA" name="context" ordered="false" lowerBound="1" eType="_cw23jppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23jppAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw23j5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw23kJpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_7io9IAZ2EeOcdYCs3l6XnA/19" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23kZpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw23lJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23kppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23lJpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw23lZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw23lppAEeOXzvVK2MY5wA" 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="_cw23mJpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw23m5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23mZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23m5pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw23nJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw23nZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23n5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw23oJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23oZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw23n5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23oppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw23o5pAEeOXzvVK2MY5wA" 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="_cw23pppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw23n5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23p5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw23qJpAEeOXzvVK2MY5wA" 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="_cw23q5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw23rJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw23rZpAEeOXzvVK2MY5wA" 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="_cw23r5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw23q5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23sJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23sppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw23q5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23s5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23tZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw23q5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23tppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23uJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw23uZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw23uppAEeOXzvVK2MY5wA" 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="_cw23vJpAEeOXzvVK2MY5wA" 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="_cw23vppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw23uJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23v5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23wZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw23uJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23wppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23xJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw23uJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23xZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23x5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw23uJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23yJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23yppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw23uJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23y5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23zZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw23uJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23zppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw230JpAEeOXzvVK2MY5wA" name="StructuredComment">
          <eAnnotations xmi:id="_cw230ZpAEeOXzvVK2MY5wA" 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="_cw230ppAEeOXzvVK2MY5wA" 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="_cw231JpAEeOXzvVK2MY5wA" 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="_cw231ppAEeOXzvVK2MY5wA" 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="_cw232JpAEeOXzvVK2MY5wA" 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="_cw232ppAEeOXzvVK2MY5wA" 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="_cw233JpAEeOXzvVK2MY5wA" 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="_cw2335pAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw23lJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw234JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw234ppAEeOXzvVK2MY5wA" name="Input_Context">
          <eAnnotations xmi:id="_cw2345pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cw235JpAEeOXzvVK2MY5wA" source="duplicates">
            <contents xmi:type="ecore:EReference" xmi:id="_cw235ZpAEeOXzvVK2MY5wA" name="activity" ordered="false" upperBound="-1">
              <eAnnotations xmi:id="_cw235ppAEeOXzvVK2MY5wA" 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="_cw236JpAEeOXzvVK2MY5wA" 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="_cw236ppAEeOXzvVK2MY5wA" name="context" ordered="false" lowerBound="1" eType="_cw237ZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw237ZpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw237ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw2375pAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_LzWoAAZ2EeOcdYCs3l6XnA/18" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw238JpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw2385pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw238ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2385pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw239JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw239ZpAEeOXzvVK2MY5wA" 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="_cw2395pAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw23-ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw23-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23-ppAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw23-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw23_JpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw23_ppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw23_5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24AJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw23_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24AZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw24AppAEeOXzvVK2MY5wA" 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="_cw24BZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw23_ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24BppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw24B5pAEeOXzvVK2MY5wA" 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="_cw24CppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw24C5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw24DJpAEeOXzvVK2MY5wA" 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="_cw24DppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw24CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24D5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24EZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw24CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24EppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24FJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw24CppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24FZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24F5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw24GJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw24GZpAEeOXzvVK2MY5wA" 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="_cw24G5pAEeOXzvVK2MY5wA" 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="_cw24HZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw24F5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24HppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24IJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw24F5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24IZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24I5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw24F5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24JJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24JppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw24F5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24J5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24KZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw24F5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24KppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24LJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw24F5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24LZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24L5pAEeOXzvVK2MY5wA" name="StructuredComment">
          <eAnnotations xmi:id="_cw24MJpAEeOXzvVK2MY5wA" 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="_cw24MZpAEeOXzvVK2MY5wA" 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="_cw24M5pAEeOXzvVK2MY5wA" 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="_cw24NZpAEeOXzvVK2MY5wA" 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="_cw24N5pAEeOXzvVK2MY5wA" 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="_cw24OZpAEeOXzvVK2MY5wA" 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="_cw24O5pAEeOXzvVK2MY5wA" 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="_cw24PppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw2385pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24P5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24QZpAEeOXzvVK2MY5wA" name="Input_Context">
          <eAnnotations xmi:id="_cw24QppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cw24Q5pAEeOXzvVK2MY5wA" source="duplicates">
            <contents xmi:type="ecore:EReference" xmi:id="_cw24RJpAEeOXzvVK2MY5wA" name="activity" ordered="false" upperBound="-1">
              <eAnnotations xmi:id="_cw24RZpAEeOXzvVK2MY5wA" 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="_cw24R5pAEeOXzvVK2MY5wA" 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="_cw24SZpAEeOXzvVK2MY5wA" name="context" ordered="false" lowerBound="1" eType="_cw24TJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24TJpAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw24TZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw24TppAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_99aoYAZ0EeOcdYCs3l6XnA/17" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24T5pAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw24UppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24UJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24UppAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw24U5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw24VJpAEeOXzvVK2MY5wA" 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="_cw24VppAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw24WZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24V5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24WZpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw24WppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw24W5pAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24XZpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw24XppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24X5pAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw24XZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24YJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw24YZpAEeOXzvVK2MY5wA" 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="_cw24ZJpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw24XZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24ZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw24ZppAEeOXzvVK2MY5wA" 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="_cw24aZpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw24appAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw24a5pAEeOXzvVK2MY5wA" 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="_cw24bZpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw24aZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24bppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24cJpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw24aZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24cZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24c5pAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw24aZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24dJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24dppAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw24d5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw24eJpAEeOXzvVK2MY5wA" 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="_cw24eppAEeOXzvVK2MY5wA" 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="_cw24fJpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw24dppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24fZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24f5pAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw24dppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24gJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24gppAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw24dppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24g5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24hZpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw24dppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24hppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24iJpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw24dppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24iZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24i5pAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw24dppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24jJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24jppAEeOXzvVK2MY5wA" name="StructuredComment">
          <eAnnotations xmi:id="_cw24j5pAEeOXzvVK2MY5wA" 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="_cw24kJpAEeOXzvVK2MY5wA" 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="_cw24kppAEeOXzvVK2MY5wA" 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="_cw24lJpAEeOXzvVK2MY5wA" 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="_cw24lppAEeOXzvVK2MY5wA" 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="_cw24mJpAEeOXzvVK2MY5wA" 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="_cw24mppAEeOXzvVK2MY5wA" 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="_cw24nZpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw24UppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24nppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24oJpAEeOXzvVK2MY5wA" name="Input_Context">
          <eAnnotations xmi:id="_cw24oZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eAnnotations xmi:id="_cw24oppAEeOXzvVK2MY5wA" source="duplicates">
            <contents xmi:type="ecore:EReference" xmi:id="_cw24o5pAEeOXzvVK2MY5wA" name="activity" ordered="false" upperBound="-1">
              <eAnnotations xmi:id="_cw24pJpAEeOXzvVK2MY5wA" 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="_cw24pppAEeOXzvVK2MY5wA" 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="_cw24qJpAEeOXzvVK2MY5wA" name="context" ordered="false" lowerBound="1" eType="_cw24q5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24q5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw24rJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw24rZpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_ez6ZwAZ0EeOcdYCs3l6XnA/16" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24rppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw24sZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24r5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24sZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw24sppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw24s5pAEeOXzvVK2MY5wA" 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="_cw24tZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw24uJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24tppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24uJpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw24uZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw24uppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24vJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw24vZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24vppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw24vJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24v5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw24wJpAEeOXzvVK2MY5wA" 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="_cw24w5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw24vJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24xJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw24xZpAEeOXzvVK2MY5wA" 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="_cw24yJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw24yZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw24yppAEeOXzvVK2MY5wA" 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="_cw24zJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw24yJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24zZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24z5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw24yJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw240JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw240ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw24yJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2405pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw241ZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw241ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2415pAEeOXzvVK2MY5wA" 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="_cw242ZpAEeOXzvVK2MY5wA" 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="_cw2425pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw241ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw243JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw243ppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw241ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2435pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw244ZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw241ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw244ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw245JpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw241ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw245ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2455pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw241ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw246JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw246ppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw241ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2465pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw247ZpAEeOXzvVK2MY5wA" name="StructuredComment">
          <eAnnotations xmi:id="_cw247ppAEeOXzvVK2MY5wA" 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="_cw2475pAEeOXzvVK2MY5wA" 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="_cw248ZpAEeOXzvVK2MY5wA" 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="_cw2485pAEeOXzvVK2MY5wA" 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="_cw249ZpAEeOXzvVK2MY5wA" 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="_cw2495pAEeOXzvVK2MY5wA" 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="_cw24-ZpAEeOXzvVK2MY5wA" 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="_cw24_JpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw24sZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw24_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw24_5pAEeOXzvVK2MY5wA" name="OCL_Context">
          <eAnnotations xmi:id="_cw25AJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw25AZpAEeOXzvVK2MY5wA" 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="_cw25A5pAEeOXzvVK2MY5wA" 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="_cw25BZpAEeOXzvVK2MY5wA" name="context" ordered="false" lowerBound="1" eType="_cw25B5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25B5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw25CJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw25CZpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_WMClAAZ0EeOcdYCs3l6XnA/15" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25CppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw25DZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25C5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25DZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw25DppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw25D5pAEeOXzvVK2MY5wA" 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="_cw25EZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw25FJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25EppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25FJpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw25FZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw25FppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25GJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw25GZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25GppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw25GJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25G5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw25HJpAEeOXzvVK2MY5wA" 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="_cw25H5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw25GJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25IJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw25IZpAEeOXzvVK2MY5wA" 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="_cw25JJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw25JZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw25JppAEeOXzvVK2MY5wA" 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="_cw25KJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw25JJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25KZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25K5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw25JJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25LJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25LppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw25JJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25L5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25MZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw25MppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw25M5pAEeOXzvVK2MY5wA" 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="_cw25NZpAEeOXzvVK2MY5wA" 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="_cw25N5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw25MZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25OJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25OppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw25MZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25O5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25PZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw25MZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25PppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25QJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw25MZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25QZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25Q5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw25MZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25RJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25RppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw25MZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25R5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25SZpAEeOXzvVK2MY5wA" name="StructuredComment">
          <eAnnotations xmi:id="_cw25SppAEeOXzvVK2MY5wA" 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="_cw25S5pAEeOXzvVK2MY5wA" 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="_cw25TZpAEeOXzvVK2MY5wA" 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="_cw25T5pAEeOXzvVK2MY5wA" 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="_cw25UZpAEeOXzvVK2MY5wA" 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="_cw25U5pAEeOXzvVK2MY5wA" 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="_cw25VZpAEeOXzvVK2MY5wA" 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="_cw25WJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw25DZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25WZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25W5pAEeOXzvVK2MY5wA" name="OCL_Context">
          <eAnnotations xmi:id="_cw25XJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw25XZpAEeOXzvVK2MY5wA" 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="_cw25X5pAEeOXzvVK2MY5wA" 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="_cw25YZpAEeOXzvVK2MY5wA" name="context" ordered="false" lowerBound="1" eType="_cw25Y5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25Y5pAEeOXzvVK2MY5wA" name="context">
          <eAnnotations xmi:id="_cw25ZJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FlZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw25ZZpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/__16QgAZzEeOcdYCs3l6XnA/14" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25ZppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw25aZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25Z5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25aZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw25appAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw25a5pAEeOXzvVK2MY5wA" 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="_cw25bZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw25cJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25bppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25cJpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw25cZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw25cppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25dJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw25dZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25dppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw25dJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25d5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw25eJpAEeOXzvVK2MY5wA" 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="_cw25e5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw25dJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25fJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw25fZpAEeOXzvVK2MY5wA" 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="_cw25gJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw25gZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw25gppAEeOXzvVK2MY5wA" 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="_cw25hJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw25gJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25hZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25h5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw25gJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25iJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25ippAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw25gJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25i5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25jZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw25jppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw25j5pAEeOXzvVK2MY5wA" 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="_cw25kZpAEeOXzvVK2MY5wA" 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="_cw25k5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw25jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25lJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25lppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw25jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25l5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25mZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw25jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25mppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25nJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw25jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25nZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25n5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw25jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25oJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25oppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw25jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25o5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25pZpAEeOXzvVK2MY5wA" name="StructuredComment">
          <eAnnotations xmi:id="_cw25pppAEeOXzvVK2MY5wA" 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="_cw25p5pAEeOXzvVK2MY5wA" 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="_cw25qZpAEeOXzvVK2MY5wA" 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="_cw25q5pAEeOXzvVK2MY5wA" 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="_cw25rZpAEeOXzvVK2MY5wA" 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="_cw25r5pAEeOXzvVK2MY5wA" 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="_cw25sZpAEeOXzvVK2MY5wA" 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="_cw25tJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw25aZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25tZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25t5pAEeOXzvVK2MY5wA" name="OCL_Context">
          <eAnnotations xmi:id="_cw25uJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw25uZpAEeOXzvVK2MY5wA" 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="_cw25u5pAEeOXzvVK2MY5wA" 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="_cw25vZpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_ElLRcAZzEeOOR4hKc-k7wg/13" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25vppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw25wZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25v5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25wZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw25wppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw25w5pAEeOXzvVK2MY5wA" 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="_cw25xZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw25yJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25xppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25yJpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw25yZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw25yppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25zJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw25zZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25zppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw25zJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25z5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw250JpAEeOXzvVK2MY5wA" 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="_cw2505pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw25zJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw251JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw251ZpAEeOXzvVK2MY5wA" 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="_cw252JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw252ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw252ppAEeOXzvVK2MY5wA" 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="_cw253JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw252JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw253ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2535pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw252JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw254JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw254ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw252JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2545pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw255ZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw255ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw2555pAEeOXzvVK2MY5wA" 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="_cw256ZpAEeOXzvVK2MY5wA" 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="_cw2565pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw255ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw257JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw257ppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw255ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw2575pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw258ZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw255ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw258ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw259JpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw255ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw259ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw2595pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw255ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25-JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25-ppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw255ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw25-5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw25_ZpAEeOXzvVK2MY5wA" name="StructuredComment">
          <eAnnotations xmi:id="_cw25_ppAEeOXzvVK2MY5wA" 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="_cw25_5pAEeOXzvVK2MY5wA" 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="_cw26AZpAEeOXzvVK2MY5wA" 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="_cw26A5pAEeOXzvVK2MY5wA" 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="_cw26BZpAEeOXzvVK2MY5wA" 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="_cw26B5pAEeOXzvVK2MY5wA" 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="_cw26CZpAEeOXzvVK2MY5wA" 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="_cw26DJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw25wZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26DZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26D5pAEeOXzvVK2MY5wA" name="OCL_Context">
          <eAnnotations xmi:id="_cw26EJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cw26EZpAEeOXzvVK2MY5wA" 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="_cw26E5pAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_qT2SsAZyEeOOR4hKc-k7wg/12" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26FJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw26F5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26FZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26F5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw26GJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw26GZpAEeOXzvVK2MY5wA" 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="_cw26G5pAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw26HppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26HJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26HppAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw26H5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw26IJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26IppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw26I5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26JJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw26IppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26JZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw26JppAEeOXzvVK2MY5wA" 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="_cw26KZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw26IppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26KppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw26K5pAEeOXzvVK2MY5wA" 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="_cw26LppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw26L5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw26MJpAEeOXzvVK2MY5wA" 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="_cw26MppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw26LppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26M5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26NZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw26LppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26NppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26OJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw26LppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26OZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26O5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw26PJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw26PZpAEeOXzvVK2MY5wA" 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="_cw26P5pAEeOXzvVK2MY5wA" 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="_cw26QZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw26O5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26QppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26RJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw26O5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26RZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26R5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw26O5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26SJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26SppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw26O5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26S5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26TZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw26O5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26TppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26UJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw26O5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26UZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26U5pAEeOXzvVK2MY5wA" name="StructuredComment">
          <eAnnotations xmi:id="_cw26VJpAEeOXzvVK2MY5wA" 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="_cw26VZpAEeOXzvVK2MY5wA" 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="_cw26V5pAEeOXzvVK2MY5wA" 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="_cw26WZpAEeOXzvVK2MY5wA" 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="_cw26W5pAEeOXzvVK2MY5wA" 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="_cw26XZpAEeOXzvVK2MY5wA" 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="_cw26X5pAEeOXzvVK2MY5wA" 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="_cw26YppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw26F5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26Y5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw26ZZpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_6qcYkAZwEeOOR4hKc-k7wg/11" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26ZppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw26aZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26Z5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26aZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw26appAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw26a5pAEeOXzvVK2MY5wA" 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="_cw26bZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw26cJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26bppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26cJpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw26cZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw26cppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26dJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw26dZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26dppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw26dJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26d5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw26eJpAEeOXzvVK2MY5wA" 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="_cw26e5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw26dJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26fJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw26fZpAEeOXzvVK2MY5wA" 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="_cw26gJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw26gZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw26gppAEeOXzvVK2MY5wA" 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="_cw26hJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw26gJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26hZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26h5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw26gJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26iJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26ippAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw26gJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw26i5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw26jZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw26jppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw26j5pAEeOXzvVK2MY5wA" 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="_cw3eQZpAEeOXzvVK2MY5wA" 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="_cw3eQ5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw26jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3eRJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3eRppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw26jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3eR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3eSZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw26jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3eSppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3eTJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw26jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3eTZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3eT5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw26jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3eUJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3eUppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw26jZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3eU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3eVZpAEeOXzvVK2MY5wA" name="StructuredComment">
          <eAnnotations xmi:id="_cw3eVppAEeOXzvVK2MY5wA" 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="_cw3eV5pAEeOXzvVK2MY5wA" 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="_cw3eWZpAEeOXzvVK2MY5wA" 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="_cw3eW5pAEeOXzvVK2MY5wA" 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="_cw3eXZpAEeOXzvVK2MY5wA" 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="_cw3eX5pAEeOXzvVK2MY5wA" 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="_cw3eYZpAEeOXzvVK2MY5wA" 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="_cw3eZJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw26aZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3eZZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw3eZ5pAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_34DwgAZwEeOOR4hKc-k7wg/10" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3eaJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw3ea5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3eaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3ea5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw3ebJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3ebZpAEeOXzvVK2MY5wA" 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="_cw3eb5pAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw3ecppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3ecJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3ecppAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw3ec5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3edJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3edppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw3ed5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3eeJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw3edppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3eeZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3eeppAEeOXzvVK2MY5wA" 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="_cw3efZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw3edppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3efppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3ef5pAEeOXzvVK2MY5wA" 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="_cw3egppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw3eg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3ehJpAEeOXzvVK2MY5wA" 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="_cw3ehppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw3egppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3eh5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3eiZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw3egppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3eippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3ejJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw3egppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3ejZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3ej5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw3ekJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3ekZpAEeOXzvVK2MY5wA" 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="_cw3ek5pAEeOXzvVK2MY5wA" 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="_cw3elZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw3ej5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3elppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3emJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw3ej5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3emZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3em5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw3ej5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3enJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3enppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw3ej5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3en5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3eoZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw3ej5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3eoppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3epJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw3ej5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3epZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3ep5pAEeOXzvVK2MY5wA" name="StructuredComment">
          <eAnnotations xmi:id="_cw3eqJpAEeOXzvVK2MY5wA" 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="_cw3eqZpAEeOXzvVK2MY5wA" 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="_cw3eq5pAEeOXzvVK2MY5wA" 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="_cw3erZpAEeOXzvVK2MY5wA" 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="_cw3er5pAEeOXzvVK2MY5wA" 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="_cw3esZpAEeOXzvVK2MY5wA" 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="_cw3es5pAEeOXzvVK2MY5wA" 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="_cw3etppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw3ea5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3et5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw3euZpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_nDfnIAZwEeOOR4hKc-k7wg/9" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3euppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw3evZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3eu5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3evZpAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw3evppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3ev5pAEeOXzvVK2MY5wA" 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="_cw3ewZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw3exJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3ewppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3exJpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw3exZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3exppAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3eyJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw3eyZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3eyppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw3eyJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3ey5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3ezJpAEeOXzvVK2MY5wA" 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="_cw3ez5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw3eyJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3e0JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3e0ZpAEeOXzvVK2MY5wA" 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="_cw3e1JpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw3e1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3e1ppAEeOXzvVK2MY5wA" 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="_cw3e2JpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw3e1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3e2ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3e25pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw3e1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3e3JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3e3ppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw3e1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3e35pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3e4ZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw3e4ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3e45pAEeOXzvVK2MY5wA" 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="_cw3e5ZpAEeOXzvVK2MY5wA" 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="_cw3e55pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw3e4ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3e6JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3e6ppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw3e4ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3e65pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3e7ZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw3e4ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3e7ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3e8JpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw3e4ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3e8ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3e85pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw3e4ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3e9JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3e9ppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw3e4ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3e95pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3e-ZpAEeOXzvVK2MY5wA" name="StructuredComment">
          <eAnnotations xmi:id="_cw3e-ppAEeOXzvVK2MY5wA" 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="_cw3e-5pAEeOXzvVK2MY5wA" 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="_cw3e_ZpAEeOXzvVK2MY5wA" 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="_cw3e_5pAEeOXzvVK2MY5wA" 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="_cw3fAZpAEeOXzvVK2MY5wA" 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="_cw3fA5pAEeOXzvVK2MY5wA" 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="_cw3fBZpAEeOXzvVK2MY5wA" 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="_cw3fCJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw3evZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fCZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw3fC5pAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_lHvFEAZwEeOOR4hKc-k7wg/8" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fDJpAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw3fD5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fDZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fD5pAEeOXzvVK2MY5wA" name="activity" abstract="true">
          <eAnnotations xmi:id="_cw3fEJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3fEZpAEeOXzvVK2MY5wA" 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="_cw3fE5pAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw3fFppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fFppAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw3fF5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3fGJpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fGppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw3fG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fHJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw3fGppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fHZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3fHppAEeOXzvVK2MY5wA" 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="_cw3fIZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw3fGppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fIppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3fI5pAEeOXzvVK2MY5wA" 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="_cw3fJppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw3fJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3fKJpAEeOXzvVK2MY5wA" 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="_cw3fKppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw3fJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fK5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fLZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw3fJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fLppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fMJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw3fJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fMZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fM5pAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw3fNJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3fNZpAEeOXzvVK2MY5wA" 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="_cw3fN5pAEeOXzvVK2MY5wA" 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="_cw3fOZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw3fM5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fPJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw3fM5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fPZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fP5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw3fM5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fQJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fQppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw3fM5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fQ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fRZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw3fM5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fRppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fSJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw3fM5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fS5pAEeOXzvVK2MY5wA" name="StructuredComment">
          <eAnnotations xmi:id="_cw3fTJpAEeOXzvVK2MY5wA" 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="_cw3fTZpAEeOXzvVK2MY5wA" 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="_cw3fT5pAEeOXzvVK2MY5wA" 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="_cw3fUZpAEeOXzvVK2MY5wA" 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="_cw3fU5pAEeOXzvVK2MY5wA" 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="_cw3fVZpAEeOXzvVK2MY5wA" 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="_cw3fV5pAEeOXzvVK2MY5wA" 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="_cw3fWppAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw3fD5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fW5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw3fXZpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_1-omMAZvEeOOR4hKc-k7wg/7" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fXppAEeOXzvVK2MY5wA" name="calculate" eSuperTypes="_cw3fYZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fX5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fYZpAEeOXzvVK2MY5wA" name="activity">
          <eAnnotations xmi:id="_cw3fYppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FfZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3fY5pAEeOXzvVK2MY5wA" 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="_cw3fZZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw3faJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3faJpAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw3faZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3fappAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fbJpAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw3fbZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fbppAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw3fbJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3fcJpAEeOXzvVK2MY5wA" 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="_cw3fc5pAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw3fbJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fdJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3fdZpAEeOXzvVK2MY5wA" 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="_cw3feJpAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw3feZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3feppAEeOXzvVK2MY5wA" 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="_cw3ffJpAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw3feJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3ffZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3ff5pAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw3feJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fgJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fgppAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw3feJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fhZpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw3fhppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3fh5pAEeOXzvVK2MY5wA" 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="_cw3fiZpAEeOXzvVK2MY5wA" 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="_cw3fi5pAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw3fhZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fjJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fjppAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw3fhZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fj5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fkZpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw3fhZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fkppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3flJpAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw3fhZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3flZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fl5pAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw3fhZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fmJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fmppAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw3fhZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fm5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fnZpAEeOXzvVK2MY5wA" name="StructuredComment">
          <eAnnotations xmi:id="_cw3fnppAEeOXzvVK2MY5wA" 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="_cw3fn5pAEeOXzvVK2MY5wA" 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="_cw3foZpAEeOXzvVK2MY5wA" 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="_cw3fo5pAEeOXzvVK2MY5wA" 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="_cw3fpZpAEeOXzvVK2MY5wA" 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="_cw3fp5pAEeOXzvVK2MY5wA" 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="_cw3fqZpAEeOXzvVK2MY5wA" 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="_cw3frJpAEeOXzvVK2MY5wA" name="assert" eSuperTypes="_cw3fYZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3frZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FiZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw3fr5pAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_LiGkIAZvEeOOR4hKc-k7wg/6" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fsJpAEeOXzvVK2MY5wA" name="calculate">
          <eAnnotations xmi:id="_cw3fsZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3fsppAEeOXzvVK2MY5wA" 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="_cw3ftJpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw3ft5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3ftZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3ft5pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw3fuJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3fuZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fu5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw3fvJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fvZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw3fu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fvppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3fv5pAEeOXzvVK2MY5wA" 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="_cw3fwppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw3fu5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fw5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3fxJpAEeOXzvVK2MY5wA" 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="_cw3fx5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw3fyJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3fyZpAEeOXzvVK2MY5wA" 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="_cw3fy5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw3fx5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fzJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3fzppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw3fx5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3fz5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3f0ZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw3fx5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3f0ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3f1JpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw3f1ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3f1ppAEeOXzvVK2MY5wA" 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="_cw3f2JpAEeOXzvVK2MY5wA" 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="_cw3f2ppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw3f1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3f25pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3f3ZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw3f1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3f3ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3f4JpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw3f1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3f4ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3f45pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw3f1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3f5JpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3f5ppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw3f1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3f55pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3f6ZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw3f1JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3f6ppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3f7JpAEeOXzvVK2MY5wA" name="StructuredComment">
          <eAnnotations xmi:id="_cw3f7ZpAEeOXzvVK2MY5wA" 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="_cw3f7ppAEeOXzvVK2MY5wA" 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="_cw3f8JpAEeOXzvVK2MY5wA" 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="_cw3f8ppAEeOXzvVK2MY5wA" 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="_cw3f9JpAEeOXzvVK2MY5wA" 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="_cw3f9ppAEeOXzvVK2MY5wA" 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="_cw3f-JpAEeOXzvVK2MY5wA" 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="_cw3f-5pAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_lh2VkAZtEeOOR4hKc-k7wg/5" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3f_JpAEeOXzvVK2MY5wA" name="calculate">
          <eAnnotations xmi:id="_cw3f_ZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3f_ppAEeOXzvVK2MY5wA" 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="_cw3gAJpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw3gA5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gAZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gA5pAEeOXzvVK2MY5wA" name="question" abstract="true">
          <eAnnotations xmi:id="_cw3gBJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3gBZpAEeOXzvVK2MY5wA" name="base_Comment" ordered="false" lowerBound="1">
            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Comment"/>
          </eStructuralFeatures>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gB5pAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw3gCJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gCZpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw3gB5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gCppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3gC5pAEeOXzvVK2MY5wA" 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="_cw3gDppAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw3gB5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gD5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3gEJpAEeOXzvVK2MY5wA" 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="_cw3gE5pAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw3gFJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3gFZpAEeOXzvVK2MY5wA" 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="_cw3gF5pAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw3gE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gGJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gGppAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw3gE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gG5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gHZpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw3gE5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gHppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gIJpAEeOXzvVK2MY5wA" name="type" abstract="true">
          <eAnnotations xmi:id="_cw3gIZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3gIppAEeOXzvVK2MY5wA" 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="_cw3gJJpAEeOXzvVK2MY5wA" 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="_cw3gJppAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw3gIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gJ5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gKZpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw3gIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gKppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gLJpAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw3gIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gLZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gL5pAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw3gIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gMJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gMppAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw3gIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gM5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gNZpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw3gIJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gNppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw3gOJpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_bOeBQAZtEeOOR4hKc-k7wg/4" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gOZpAEeOXzvVK2MY5wA" name="calculate">
          <eAnnotations xmi:id="_cw3gOppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3gO5pAEeOXzvVK2MY5wA" 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="_cw3gPZpAEeOXzvVK2MY5wA" name="query" eSuperTypes="_cw3gRJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gPppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3gP5pAEeOXzvVK2MY5wA" 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="_cw3gQZpAEeOXzvVK2MY5wA" 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="_cw3gRJpAEeOXzvVK2MY5wA" name="question">
          <eAnnotations xmi:id="_cw3gRZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gRppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw3gR5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gSJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw3gRppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gSZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3gSppAEeOXzvVK2MY5wA" 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="_cw3gTZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw3gRppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gTppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3gT5pAEeOXzvVK2MY5wA" 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="_cw3gUppAEeOXzvVK2MY5wA" name="source" abstract="true">
          <eAnnotations xmi:id="_cw3gU5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hRJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3gVJpAEeOXzvVK2MY5wA" 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="_cw3gVppAEeOXzvVK2MY5wA" name="fromagent" eSuperTypes="_cw3gUppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gV5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FXJpAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gWZpAEeOXzvVK2MY5wA" name="fromlaw" eSuperTypes="_cw3gUppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gWppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4FYppAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gXJpAEeOXzvVK2MY5wA" name="fromrecord" eSuperTypes="_cw3gUppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gXZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw4Fa5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gX5pAEeOXzvVK2MY5wA" name="type">
          <eAnnotations xmi:id="_cw3gYJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3gYZpAEeOXzvVK2MY5wA" 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="_cw3gY5pAEeOXzvVK2MY5wA" 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="_cw3gZZpAEeOXzvVK2MY5wA" name="number" eSuperTypes="_cw3gX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gZppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gaJpAEeOXzvVK2MY5wA" name="string" eSuperTypes="_cw3gX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gaZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3ga5pAEeOXzvVK2MY5wA" name="boolean" eSuperTypes="_cw3gX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gbJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gbppAEeOXzvVK2MY5wA" name="money" eSuperTypes="_cw3gX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gb5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gcZpAEeOXzvVK2MY5wA" name="object" eSuperTypes="_cw3gX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gcppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gdJpAEeOXzvVK2MY5wA" name="objectset" eSuperTypes="_cw3gX5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gdZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
        </eClassifiers>
      </contents>
      <contents xmi:type="ecore:EPackage" xmi:id="_cw3gd5pAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_mrLxoAZsEeOOR4hKc-k7wg/3" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3geJpAEeOXzvVK2MY5wA" name="calculate">
          <eAnnotations xmi:id="_cw3geZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3geppAEeOXzvVK2MY5wA" 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="_cw3gfJpAEeOXzvVK2MY5wA" name="query">
          <eAnnotations xmi:id="_cw3gfZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gsZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3gfppAEeOXzvVK2MY5wA" 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="_cw3ggJpAEeOXzvVK2MY5wA" 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="_cw3ggppAEeOXzvVK2MY5wA" name="direction" abstract="true">
          <eAnnotations xmi:id="_cw3gg5pAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hC5pAEeOXzvVK2MY5wA"/>
        </eClassifiers>
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3ghJpAEeOXzvVK2MY5wA" name="in" eSuperTypes="_cw3ggppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3ghZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hIJpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3ghppAEeOXzvVK2MY5wA" 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="_cw3giZpAEeOXzvVK2MY5wA" name="out" eSuperTypes="_cw3ggppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gippAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3hMppAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3gi5pAEeOXzvVK2MY5wA" 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="_cw3gjppAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_iTNooAZoEeOOR4hKc-k7wg/2" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3gj5pAEeOXzvVK2MY5wA" name="calculate">
          <eAnnotations xmi:id="_cw3gkJpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3gkZpAEeOXzvVK2MY5wA" 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="_cw3gk5pAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_9a5C4ATvEeO0DqTEpdZ6ag/1" nsPrefix="ActicityDiagramProfile">
        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cw3glJpAEeOXzvVK2MY5wA" name="calculate">
          <eAnnotations xmi:id="_cw3glZpAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_cw3gpZpAEeOXzvVK2MY5wA"/>
          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cw3glppAEeOXzvVK2MY5wA" 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="_cw3gmJpAEeOXzvVK2MY5wA" name="ActicityDiagramProfile" nsURI="http:///schemas/ActicityDiagramProfile/_yC-IYATvEeO0DqTEpdZ6ag/0" nsPrefix="ActicityDiagramProfile"/>
    </eAnnotations>
    <packageImport xmi:id="_cw3gmZpAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw3gmppAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw3gm5pAEeOXzvVK2MY5wA" key="addedInVersion" value="1"/>
      </eAnnotations>
      <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
    </packageImport>
    <packageImport xmi:id="_cw3gnJpAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw3gnZpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw3gnppAEeOXzvVK2MY5wA" key="addedInVersion" value="1"/>
      </eAnnotations>
      <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#_0"/>
    </packageImport>
    <packageImport xmi:id="_cw3gn5pAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw3goJpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw3goZpAEeOXzvVK2MY5wA" key="addedInVersion" value="1"/>
      </eAnnotations>
      <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#_0"/>
    </packageImport>
    <packageImport xmi:id="_cw3goppAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw3go5pAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw3gpJpAEeOXzvVK2MY5wA" 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="_cw3gpZpAEeOXzvVK2MY5wA" name="calculate">
      <eAnnotations xmi:id="_cw3gpppAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw3gp5pAEeOXzvVK2MY5wA" key="addedInVersion" value="1"/>
      </eAnnotations>
      <ownedRule xmi:id="_cw3gqJpAEeOXzvVK2MY5wA" name="for_each_calculation_the_formula_stereotype_should_be_applied_on_associated_comment" constrainedElement="_cw3gpZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3gqZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3gqppAEeOXzvVK2MY5wA" key="addedInVersion" value="98"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw3gq5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3grJpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3grZpAEeOXzvVK2MY5wA" 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="_cw3grppAEeOXzvVK2MY5wA" general="_cw4FfZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3gr5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3gsJpAEeOXzvVK2MY5wA" key="addedInVersion" value="7"/>
        </eAnnotations>
      </generalization>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_cw3gsZpAEeOXzvVK2MY5wA" name="query">
      <eAnnotations xmi:id="_cw3gsppAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw3gs5pAEeOXzvVK2MY5wA" key="addedInVersion" value="3"/>
      </eAnnotations>
      <ownedRule xmi:id="_cw3gtJpAEeOXzvVK2MY5wA" name="query_fromlaw" constrainedElement="_cw3gsZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3gtZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3gtppAEeOXzvVK2MY5wA" key="addedInVersion" value="84"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw3gt5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3guJpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3guZpAEeOXzvVK2MY5wA" 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="_cw3guppAEeOXzvVK2MY5wA" name="query_fromagent" constrainedElement="_cw3gsZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3gu5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3gvJpAEeOXzvVK2MY5wA" key="addedInVersion" value="85"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw3gvZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gvppAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3gv5pAEeOXzvVK2MY5wA" 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="_cw3gwJpAEeOXzvVK2MY5wA" name="query_fromrecord" constrainedElement="_cw3gsZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3gwZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3gwppAEeOXzvVK2MY5wA" key="addedInVersion" value="87"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw3gw5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gxJpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3gxZpAEeOXzvVK2MY5wA" 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="_cw3gxppAEeOXzvVK2MY5wA" name="unique_query_per_comment" constrainedElement="_cw3gsZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3gx5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3gyJpAEeOXzvVK2MY5wA" key="addedInVersion" value="88"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw3gyZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3gyppAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3gy5pAEeOXzvVK2MY5wA" 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="_cw3gzJpAEeOXzvVK2MY5wA" name="agent_role" visibility="public" type="_cw4FqppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3gzZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3gzppAEeOXzvVK2MY5wA" key="addedInVersion" value="20"/>
        </eAnnotations>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_cw3gz5pAEeOXzvVK2MY5wA" value="1">
          <eAnnotations xmi:id="_cw3g0JpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3g0ZpAEeOXzvVK2MY5wA" key="addedInVersion" value="20"/>
          </eAnnotations>
        </upperValue>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_cw3g0ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3g05pAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3g1JpAEeOXzvVK2MY5wA" key="addedInVersion" value="20"/>
          </eAnnotations>
        </lowerValue>
        <defaultValue xmi:type="uml:InstanceValue" xmi:id="_cw3g1ZpAEeOXzvVK2MY5wA" name="NONE" type="_cw4FqppAEeOXzvVK2MY5wA" instance="_cw4FrZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3g1ppAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3g15pAEeOXzvVK2MY5wA" key="addedInVersion" value="132"/>
          </eAnnotations>
        </defaultValue>
      </ownedAttribute>
      <ownedAttribute xmi:id="_cw3g2JpAEeOXzvVK2MY5wA" name="question" visibility="public">
        <eAnnotations xmi:id="_cw3g2ZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3g2ppAEeOXzvVK2MY5wA" 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="_cw3g25pAEeOXzvVK2MY5wA" value="1">
          <eAnnotations xmi:id="_cw3g3JpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3g3ZpAEeOXzvVK2MY5wA" key="addedInVersion" value="20"/>
          </eAnnotations>
        </upperValue>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_cw3g3ppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3g35pAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3g4JpAEeOXzvVK2MY5wA" key="addedInVersion" value="20"/>
          </eAnnotations>
        </lowerValue>
      </ownedAttribute>
      <ownedAttribute xmi:id="_cw3g4ZpAEeOXzvVK2MY5wA" name="source" visibility="public">
        <eAnnotations xmi:id="_cw3g4ppAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3g45pAEeOXzvVK2MY5wA" 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="_cw3g5JpAEeOXzvVK2MY5wA" value="1">
          <eAnnotations xmi:id="_cw3g5ZpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3g5ppAEeOXzvVK2MY5wA" key="addedInVersion" value="20"/>
          </eAnnotations>
        </upperValue>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_cw3g55pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3g6JpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3g6ZpAEeOXzvVK2MY5wA" key="addedInVersion" value="20"/>
          </eAnnotations>
        </lowerValue>
      </ownedAttribute>
      <ownedAttribute xmi:id="_cw3g6ppAEeOXzvVK2MY5wA" name="value_type" visibility="public" type="_cw4FtppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3g65pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3g7JpAEeOXzvVK2MY5wA" key="addedInVersion" value="20"/>
        </eAnnotations>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_cw3g7ZpAEeOXzvVK2MY5wA" value="1">
          <eAnnotations xmi:id="_cw3g7ppAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3g75pAEeOXzvVK2MY5wA" key="addedInVersion" value="20"/>
          </eAnnotations>
        </upperValue>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_cw3g8JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3g8ZpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3g8ppAEeOXzvVK2MY5wA" key="addedInVersion" value="20"/>
          </eAnnotations>
        </lowerValue>
        <defaultValue xmi:type="uml:InstanceValue" xmi:id="_cw3g85pAEeOXzvVK2MY5wA" name="NONE" type="_cw4FtppAEeOXzvVK2MY5wA" instance="_cw4FuZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3g9JpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3g9ZpAEeOXzvVK2MY5wA" key="addedInVersion" value="133"/>
          </eAnnotations>
        </defaultValue>
      </ownedAttribute>
      <ownedAttribute xmi:id="_cw3g9ppAEeOXzvVK2MY5wA" name="parameters" visibility="public">
        <eAnnotations xmi:id="_cw3g95pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3g-JpAEeOXzvVK2MY5wA" 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="_cw3g-ZpAEeOXzvVK2MY5wA" value="*">
          <eAnnotations xmi:id="_cw3g-ppAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3g-5pAEeOXzvVK2MY5wA" key="addedInVersion" value="20"/>
          </eAnnotations>
        </upperValue>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_cw3g_JpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3g_ZpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3g_ppAEeOXzvVK2MY5wA" key="addedInVersion" value="20"/>
          </eAnnotations>
        </lowerValue>
      </ownedAttribute>
      <ownedAttribute xmi:id="_cw3g_5pAEeOXzvVK2MY5wA" name="constraint" visibility="private" aggregation="shared" association="_cw4FcZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3hAJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3hAZpAEeOXzvVK2MY5wA" 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="_cw3hAppAEeOXzvVK2MY5wA" value="*">
          <eAnnotations xmi:id="_cw3hA5pAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3hBJpAEeOXzvVK2MY5wA" key="addedInVersion" value="6"/>
          </eAnnotations>
        </upperValue>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_cw3hBZpAEeOXzvVK2MY5wA" value="1">
          <eAnnotations xmi:id="_cw3hBppAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3hB5pAEeOXzvVK2MY5wA" key="addedInVersion" value="6"/>
          </eAnnotations>
        </lowerValue>
      </ownedAttribute>
      <ownedAttribute xmi:id="_cw3hCJpAEeOXzvVK2MY5wA" name="base_Comment" association="_cw4GDZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3hCZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3hCppAEeOXzvVK2MY5wA" 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="_cw3hC5pAEeOXzvVK2MY5wA" name="direction" isAbstract="true">
      <eAnnotations xmi:id="_cw3hDJpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw3hDZpAEeOXzvVK2MY5wA" key="addedInVersion" value="3"/>
      </eAnnotations>
      <ownedRule xmi:id="_cw3hDppAEeOXzvVK2MY5wA" name="unque_in_out_per_pin_node" constrainedElement="_cw3hC5pAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3hD5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3hEJpAEeOXzvVK2MY5wA" key="addedInVersion" value="177"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw3hEZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3hEppAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3hE5pAEeOXzvVK2MY5wA" 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="_cw3hFJpAEeOXzvVK2MY5wA" name="unque_in_out_per_parameter_node" constrainedElement="_cw3hC5pAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3hFZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3hFppAEeOXzvVK2MY5wA" key="addedInVersion" value="296"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw3hF5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3hGJpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3hGZpAEeOXzvVK2MY5wA" 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="_cw3hGppAEeOXzvVK2MY5wA" name="base_Pin" association="_cw4GRppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3hG5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3hHJpAEeOXzvVK2MY5wA" key="addedInVersion" value="201"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Pin"/>
      </ownedAttribute>
      <ownedAttribute xmi:id="_cw3hHZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" association="_cw4GUppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3hHppAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3hH5pAEeOXzvVK2MY5wA" 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="_cw3hIJpAEeOXzvVK2MY5wA" name="in">
      <eAnnotations xmi:id="_cw3hIZpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw3hIppAEeOXzvVK2MY5wA" key="addedInVersion" value="3"/>
      </eAnnotations>
      <ownedRule xmi:id="_cw3hI5pAEeOXzvVK2MY5wA" name="macthes_parameter_direction_in" constrainedElement="_cw3hIJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3hJJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3hJZpAEeOXzvVK2MY5wA" key="addedInVersion" value="192"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw3hJppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3hJ5pAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3hKJpAEeOXzvVK2MY5wA" 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="_cw3hKZpAEeOXzvVK2MY5wA" name="matches_input_pin" constrainedElement="_cw3hIJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3hKppAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3hK5pAEeOXzvVK2MY5wA" key="addedInVersion" value="194"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw3hLJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3hLZpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3hLppAEeOXzvVK2MY5wA" 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="_cw3hL5pAEeOXzvVK2MY5wA" general="_cw3hC5pAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3hMJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3hMZpAEeOXzvVK2MY5wA" key="addedInVersion" value="3"/>
        </eAnnotations>
      </generalization>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_cw3hMppAEeOXzvVK2MY5wA" name="out">
      <eAnnotations xmi:id="_cw3hM5pAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw3hNJpAEeOXzvVK2MY5wA" key="addedInVersion" value="3"/>
      </eAnnotations>
      <ownedRule xmi:id="_cw3hNZpAEeOXzvVK2MY5wA" name="matches_parameter_direction_out" constrainedElement="_cw3hMppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3hNppAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3hN5pAEeOXzvVK2MY5wA" key="addedInVersion" value="195"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw3hOJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3hOZpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3hOppAEeOXzvVK2MY5wA" 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="_cw3hO5pAEeOXzvVK2MY5wA" name="matches_output_pin" constrainedElement="_cw3hMppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3hPJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3hPZpAEeOXzvVK2MY5wA" key="addedInVersion" value="195"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw3hPppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3hP5pAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3hQJpAEeOXzvVK2MY5wA" 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="_cw3hQZpAEeOXzvVK2MY5wA" general="_cw3hC5pAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3hQppAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3hQ5pAEeOXzvVK2MY5wA" key="addedInVersion" value="3"/>
        </eAnnotations>
      </generalization>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_cw3hRJpAEeOXzvVK2MY5wA" name="source" isAbstract="true">
      <eAnnotations xmi:id="_cw3hRZpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw3hRppAEeOXzvVK2MY5wA" key="addedInVersion" value="4"/>
      </eAnnotations>
      <ownedRule xmi:id="_cw3hR5pAEeOXzvVK2MY5wA" name="unique_source_for_parameter_nodes" constrainedElement="_cw3hRJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3hSJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3hSZpAEeOXzvVK2MY5wA" key="addedInVersion" value="79"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw3hSppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3hS5pAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3hTJpAEeOXzvVK2MY5wA" 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="_cw3hTZpAEeOXzvVK2MY5wA" name="for_each_source_for_parameter_nodes_the_query_must_be_given" constrainedElement="_cw3hRJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3hTppAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3hT5pAEeOXzvVK2MY5wA" key="addedInVersion" value="121"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw3hUJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3hUZpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3hUppAEeOXzvVK2MY5wA" 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="_cw3hU5pAEeOXzvVK2MY5wA" name="unique_source_for_inputpin_nodes" constrainedElement="_cw3hRJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw3hVJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw3hVZpAEeOXzvVK2MY5wA" key="addedInVersion" value="285"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw3hVppAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw3hV5pAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw3hWJpAEeOXzvVK2MY5wA" 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="_cw4FUJpAEeOXzvVK2MY5wA" name="for_each_source_for_inputpin_nodes_the_query_must_be_given" constrainedElement="_cw3hRJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FUZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FUppAEeOXzvVK2MY5wA" key="addedInVersion" value="295"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw4FU5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw4FVJpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4FVZpAEeOXzvVK2MY5wA" 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="_cw4FVppAEeOXzvVK2MY5wA" name="base_Pin" association="_cw4GQJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FV5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FWJpAEeOXzvVK2MY5wA" key="addedInVersion" value="201"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Pin"/>
      </ownedAttribute>
      <ownedAttribute xmi:id="_cw4FWZpAEeOXzvVK2MY5wA" name="base_ActivityParameterNode" association="_cw4GTJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FWppAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FW5pAEeOXzvVK2MY5wA" 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="_cw4FXJpAEeOXzvVK2MY5wA" name="fromagent">
      <eAnnotations xmi:id="_cw4FXZpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4FXppAEeOXzvVK2MY5wA" key="addedInVersion" value="4"/>
      </eAnnotations>
      <generalization xmi:id="_cw4FX5pAEeOXzvVK2MY5wA" general="_cw3hRJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FYJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FYZpAEeOXzvVK2MY5wA" key="addedInVersion" value="4"/>
        </eAnnotations>
      </generalization>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_cw4FYppAEeOXzvVK2MY5wA" name="fromlaw">
      <eAnnotations xmi:id="_cw4FY5pAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4FZJpAEeOXzvVK2MY5wA" key="addedInVersion" value="4"/>
      </eAnnotations>
      <generalization xmi:id="_cw4FZZpAEeOXzvVK2MY5wA" general="_cw3hRJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FZppAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FZ5pAEeOXzvVK2MY5wA" key="addedInVersion" value="4"/>
        </eAnnotations>
      </generalization>
      <ownedAttribute xmi:id="_cw4FaJpAEeOXzvVK2MY5wA" name="base_Activity" association="_cw4Gu5pAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FaZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FappAEeOXzvVK2MY5wA" key="addedInVersion" value="317"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Activity"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_cw4Fa5pAEeOXzvVK2MY5wA" name="fromrecord">
      <eAnnotations xmi:id="_cw4FbJpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4FbZpAEeOXzvVK2MY5wA" key="addedInVersion" value="4"/>
      </eAnnotations>
      <generalization xmi:id="_cw4FbppAEeOXzvVK2MY5wA" general="_cw3hRJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4Fb5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FcJpAEeOXzvVK2MY5wA" key="addedInVersion" value="4"/>
        </eAnnotations>
      </generalization>
    </packagedElement>
    <packagedElement xmi:type="uml:Association" xmi:id="_cw4FcZpAEeOXzvVK2MY5wA" memberEnd="_cw3g_5pAEeOXzvVK2MY5wA _cw4FdJpAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4FcppAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4Fc5pAEeOXzvVK2MY5wA" key="addedInVersion" value="6"/>
      </eAnnotations>
      <ownedEnd xmi:id="_cw4FdJpAEeOXzvVK2MY5wA" name="structuredComment" visibility="private" type="_cw3gsZpAEeOXzvVK2MY5wA" association="_cw4FcZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FdZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FdppAEeOXzvVK2MY5wA" key="addedInVersion" value="6"/>
        </eAnnotations>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_cw4Fd5pAEeOXzvVK2MY5wA" value="1">
          <eAnnotations xmi:id="_cw4FeJpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4FeZpAEeOXzvVK2MY5wA" key="addedInVersion" value="6"/>
          </eAnnotations>
        </upperValue>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_cw4FeppAEeOXzvVK2MY5wA" value="1">
          <eAnnotations xmi:id="_cw4Fe5pAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4FfJpAEeOXzvVK2MY5wA" key="addedInVersion" value="6"/>
          </eAnnotations>
        </lowerValue>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_cw4FfZpAEeOXzvVK2MY5wA" name="operation" isAbstract="true">
      <eAnnotations xmi:id="_cw4FfppAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4Ff5pAEeOXzvVK2MY5wA" key="addedInVersion" value="7"/>
      </eAnnotations>
      <ownedRule xmi:id="_cw4FgJpAEeOXzvVK2MY5wA" name="unique_activity" constrainedElement="_cw4FfZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FgZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FgppAEeOXzvVK2MY5wA" key="addedInVersion" value="90"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw4Fg5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw4FhJpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4FhZpAEeOXzvVK2MY5wA" 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="_cw4FhppAEeOXzvVK2MY5wA" name="base_OpaqueAction" association="_cw4GE5pAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4Fh5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FiJpAEeOXzvVK2MY5wA" 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="_cw4FiZpAEeOXzvVK2MY5wA" name="assert">
      <eAnnotations xmi:id="_cw4FippAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4Fi5pAEeOXzvVK2MY5wA" key="addedInVersion" value="7"/>
      </eAnnotations>
      <ownedRule xmi:id="_cw4FjJpAEeOXzvVK2MY5wA" name="for_each_assertion_the_constraint_stereotype_should_be_applied_on_associated_comment" constrainedElement="_cw4FiZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FjZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FjppAEeOXzvVK2MY5wA" key="addedInVersion" value="97"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw4Fj5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw4FkJpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4FkZpAEeOXzvVK2MY5wA" 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="_cw4FkppAEeOXzvVK2MY5wA" general="_cw4FfZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4Fk5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FlJpAEeOXzvVK2MY5wA" key="addedInVersion" value="7"/>
        </eAnnotations>
      </generalization>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_cw4FlZpAEeOXzvVK2MY5wA" name="context">
      <eAnnotations xmi:id="_cw4FlppAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4Fl5pAEeOXzvVK2MY5wA" key="addedInVersion" value="15"/>
      </eAnnotations>
      <ownedRule xmi:id="_cw4FmJpAEeOXzvVK2MY5wA" name="unique_context" constrainedElement="_cw4FlZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FmZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FmppAEeOXzvVK2MY5wA" key="addedInVersion" value="81"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw4Fm5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw4FnJpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4FnZpAEeOXzvVK2MY5wA" 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="_cw4FnppAEeOXzvVK2MY5wA" name="context_must_be_specified" constrainedElement="_cw4FlZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4Fn5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FoJpAEeOXzvVK2MY5wA" key="addedInVersion" value="314"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw4FoZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw4FoppAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4Fo5pAEeOXzvVK2MY5wA" 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="_cw4FpJpAEeOXzvVK2MY5wA" name="context_class" visibility="public">
        <eAnnotations xmi:id="_cw4FpZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FpppAEeOXzvVK2MY5wA" key="addedInVersion" value="26"/>
        </eAnnotations>
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
      </ownedAttribute>
      <ownedAttribute xmi:id="_cw4Fp5pAEeOXzvVK2MY5wA" name="base_Activity" association="_cw4GtZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FqJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FqZpAEeOXzvVK2MY5wA" 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="_cw4FqppAEeOXzvVK2MY5wA" name="Agent_Role">
      <eAnnotations xmi:id="_cw4Fq5pAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4FrJpAEeOXzvVK2MY5wA" key="addedInVersion" value="20"/>
      </eAnnotations>
      <ownedLiteral xmi:id="_cw4FrZpAEeOXzvVK2MY5wA" name="NONE" classifier="_cw4FqppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FrppAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4Fr5pAEeOXzvVK2MY5wA" key="addedInVersion" value="131"/>
        </eAnnotations>
      </ownedLiteral>
      <ownedLiteral xmi:id="_cw4FsJpAEeOXzvVK2MY5wA" name="OFFICER" classifier="_cw4FqppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FsZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FsppAEeOXzvVK2MY5wA" key="addedInVersion" value="20"/>
        </eAnnotations>
      </ownedLiteral>
      <ownedLiteral xmi:id="_cw4Fs5pAEeOXzvVK2MY5wA" name="OTHER" classifier="_cw4FqppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FtJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FtZpAEeOXzvVK2MY5wA" key="addedInVersion" value="20"/>
        </eAnnotations>
      </ownedLiteral>
    </packagedElement>
    <packagedElement xmi:type="uml:Enumeration" xmi:id="_cw4FtppAEeOXzvVK2MY5wA" name="Value_Type">
      <eAnnotations xmi:id="_cw4Ft5pAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4FuJpAEeOXzvVK2MY5wA" key="addedInVersion" value="20"/>
      </eAnnotations>
      <ownedLiteral xmi:id="_cw4FuZpAEeOXzvVK2MY5wA" name="NONE" classifier="_cw4FtppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FuppAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4Fu5pAEeOXzvVK2MY5wA" key="addedInVersion" value="132"/>
        </eAnnotations>
      </ownedLiteral>
      <ownedLiteral xmi:id="_cw4FvJpAEeOXzvVK2MY5wA" name="FIXED_VALUE" classifier="_cw4FtppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FvZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FvppAEeOXzvVK2MY5wA" key="addedInVersion" value="20"/>
        </eAnnotations>
      </ownedLiteral>
      <ownedLiteral xmi:id="_cw4Fv5pAEeOXzvVK2MY5wA" name="LOOKUP_TABLE" classifier="_cw4FtppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FwJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FwZpAEeOXzvVK2MY5wA" key="addedInVersion" value="20"/>
        </eAnnotations>
      </ownedLiteral>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_cw4FwppAEeOXzvVK2MY5wA" name="expression" isAbstract="true">
      <eAnnotations xmi:id="_cw4Fw5pAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4FxJpAEeOXzvVK2MY5wA" key="addedInVersion" value="21"/>
      </eAnnotations>
      <ownedRule xmi:id="_cw4FxZpAEeOXzvVK2MY5wA" name="logical_expression_unique" constrainedElement="_cw4FwppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FxppAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4Fx5pAEeOXzvVK2MY5wA" key="addedInVersion" value="93"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw4FyJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw4FyZpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4FyppAEeOXzvVK2MY5wA" 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="_cw4Fy5pAEeOXzvVK2MY5wA" name="constraint" visibility="public" aggregation="shared" association="_cw4F-5pAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4FzJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4FzZpAEeOXzvVK2MY5wA" 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="_cw4FzppAEeOXzvVK2MY5wA" value="1">
          <eAnnotations xmi:id="_cw4Fz5pAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4F0JpAEeOXzvVK2MY5wA" key="addedInVersion" value="21"/>
          </eAnnotations>
        </upperValue>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_cw4F0ZpAEeOXzvVK2MY5wA" value="1">
          <eAnnotations xmi:id="_cw4F0ppAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4F05pAEeOXzvVK2MY5wA" key="addedInVersion" value="21"/>
          </eAnnotations>
        </lowerValue>
      </ownedAttribute>
      <ownedAttribute xmi:id="_cw4F1JpAEeOXzvVK2MY5wA" name="base_Comment" association="_cw4GB5pAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4F1ZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4F1ppAEeOXzvVK2MY5wA" 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="_cw4F15pAEeOXzvVK2MY5wA" name="formula">
      <eAnnotations xmi:id="_cw4F2JpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4F2ZpAEeOXzvVK2MY5wA" key="addedInVersion" value="21"/>
      </eAnnotations>
      <ownedRule xmi:id="_cw4F2ppAEeOXzvVK2MY5wA" name="for_each_formula_the_attribute_constraint_should_be_defined" constrainedElement="_cw4F15pAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4F25pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4F3JpAEeOXzvVK2MY5wA" key="addedInVersion" value="92"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw4F3ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw4F3ppAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4F35pAEeOXzvVK2MY5wA" 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="_cw4F4JpAEeOXzvVK2MY5wA" name="each_formula_should_annotate_an_activity_node_with_calculate_stereotype" constrainedElement="_cw4F15pAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4F4ZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4F4ppAEeOXzvVK2MY5wA" key="addedInVersion" value="157"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw4F45pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw4F5JpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4F5ZpAEeOXzvVK2MY5wA" 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="_cw4F5ppAEeOXzvVK2MY5wA" general="_cw4FwppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4F55pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4F6JpAEeOXzvVK2MY5wA" key="addedInVersion" value="21"/>
        </eAnnotations>
      </generalization>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_cw4F6ZpAEeOXzvVK2MY5wA" name="statement">
      <eAnnotations xmi:id="_cw4F6ppAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4F65pAEeOXzvVK2MY5wA" key="addedInVersion" value="21"/>
      </eAnnotations>
      <ownedRule xmi:id="_cw4F7JpAEeOXzvVK2MY5wA" name="for_each_assert_the_attribute_constraint_should_be_defined" constrainedElement="_cw4F6ZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4F7ZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4F7ppAEeOXzvVK2MY5wA" key="addedInVersion" value="91"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw4F75pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw4F8JpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4F8ZpAEeOXzvVK2MY5wA" 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="_cw4F8ppAEeOXzvVK2MY5wA" name="each_constraint_should_annotate_an_activity_node_with_assert_stereotype" constrainedElement="_cw4F6ZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4F85pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4F9JpAEeOXzvVK2MY5wA" key="addedInVersion" value="158"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw4F9ZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw4F9ppAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4F95pAEeOXzvVK2MY5wA" 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="_cw4F-JpAEeOXzvVK2MY5wA" general="_cw4FwppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4F-ZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4F-ppAEeOXzvVK2MY5wA" key="addedInVersion" value="21"/>
        </eAnnotations>
      </generalization>
    </packagedElement>
    <packagedElement xmi:type="uml:Association" xmi:id="_cw4F-5pAEeOXzvVK2MY5wA" name="specified by" memberEnd="_cw4Fy5pAEeOXzvVK2MY5wA _cw4F_ppAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4F_JpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4F_ZpAEeOXzvVK2MY5wA" key="addedInVersion" value="21"/>
      </eAnnotations>
      <ownedEnd xmi:id="_cw4F_ppAEeOXzvVK2MY5wA" name="logical_expression" visibility="private" type="_cw4FwppAEeOXzvVK2MY5wA" association="_cw4F-5pAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4F_5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GAJpAEeOXzvVK2MY5wA" key="addedInVersion" value="21"/>
        </eAnnotations>
        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_cw4GAZpAEeOXzvVK2MY5wA" value="1">
          <eAnnotations xmi:id="_cw4GAppAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4GA5pAEeOXzvVK2MY5wA" key="addedInVersion" value="21"/>
          </eAnnotations>
        </upperValue>
        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_cw4GBJpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw4GBZpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4GBppAEeOXzvVK2MY5wA" key="addedInVersion" value="21"/>
          </eAnnotations>
        </lowerValue>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_cw4GB5pAEeOXzvVK2MY5wA" name="Comment_logical_expression" memberEnd="_cw4GCppAEeOXzvVK2MY5wA _cw4F1JpAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4GCJpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GCZpAEeOXzvVK2MY5wA" key="addedInVersion" value="30"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cw4GCppAEeOXzvVK2MY5wA" name="extension_logical_expression" type="_cw4FwppAEeOXzvVK2MY5wA" aggregation="composite" association="_cw4GB5pAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GC5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GDJpAEeOXzvVK2MY5wA" key="addedInVersion" value="30"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_cw4GDZpAEeOXzvVK2MY5wA" name="Comment_query" memberEnd="_cw4GEJpAEeOXzvVK2MY5wA _cw3hCJpAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4GDppAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GD5pAEeOXzvVK2MY5wA" key="addedInVersion" value="67"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cw4GEJpAEeOXzvVK2MY5wA" name="extension_query" type="_cw3gsZpAEeOXzvVK2MY5wA" aggregation="composite" association="_cw4GDZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GEZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GEppAEeOXzvVK2MY5wA" key="addedInVersion" value="67"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_cw4GE5pAEeOXzvVK2MY5wA" name="OpaqueAction_activity" memberEnd="_cw4GFppAEeOXzvVK2MY5wA _cw4FhppAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4GFJpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GFZpAEeOXzvVK2MY5wA" key="addedInVersion" value="90"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cw4GFppAEeOXzvVK2MY5wA" name="extension_activity" type="_cw4FfZpAEeOXzvVK2MY5wA" aggregation="composite" association="_cw4GE5pAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GF5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GGJpAEeOXzvVK2MY5wA" key="addedInVersion" value="90"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_cw4GGZpAEeOXzvVK2MY5wA" name="flow">
      <eAnnotations xmi:id="_cw4GGppAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GG5pAEeOXzvVK2MY5wA" key="addedInVersion" value="183"/>
      </eAnnotations>
      <ownedRule xmi:id="_cw4GHJpAEeOXzvVK2MY5wA" name="action_nodes_authorization" constrainedElement="_cw4GGZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GHZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GHppAEeOXzvVK2MY5wA" key="addedInVersion" value="184"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw4GH5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw4GIJpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4GIZpAEeOXzvVK2MY5wA" 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="_cw4GIppAEeOXzvVK2MY5wA" name="control_nodes_authorization" constrainedElement="_cw4GGZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GI5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GJJpAEeOXzvVK2MY5wA" key="addedInVersion" value="186"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw4GJZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw4GJppAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4GJ5pAEeOXzvVK2MY5wA" 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="_cw4GKJpAEeOXzvVK2MY5wA" name="object_nodes_auhtoization" constrainedElement="_cw4GGZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GKZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GKppAEeOXzvVK2MY5wA" key="addedInVersion" value="187"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw4GK5pAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw4GLJpAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4GLZpAEeOXzvVK2MY5wA" 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="_cw4GLppAEeOXzvVK2MY5wA" name="containment_elements_autorization" constrainedElement="_cw4GGZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GL5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GMJpAEeOXzvVK2MY5wA" key="addedInVersion" value="191"/>
        </eAnnotations>
        <specification xmi:type="uml:OpaqueExpression" xmi:id="_cw4GMZpAEeOXzvVK2MY5wA">
          <eAnnotations xmi:id="_cw4GMppAEeOXzvVK2MY5wA" source="uml2.extensions">
            <details xmi:id="_cw4GM5pAEeOXzvVK2MY5wA" 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="_cw4GNJpAEeOXzvVK2MY5wA" name="base_FinalNode" association="_cw4GWJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GNZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GNppAEeOXzvVK2MY5wA" key="addedInVersion" value="235"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#FinalNode"/>
      </ownedAttribute>
      <ownedAttribute xmi:id="_cw4GN5pAEeOXzvVK2MY5wA" name="base_ObjectFlow" association="_cw4GXppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GOJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GOZpAEeOXzvVK2MY5wA" key="addedInVersion" value="235"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#ObjectFlow"/>
      </ownedAttribute>
      <ownedAttribute xmi:id="_cw4GOppAEeOXzvVK2MY5wA" name="base_ControlFlow" association="_cw4GZJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GO5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GPJpAEeOXzvVK2MY5wA" key="addedInVersion" value="235"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#ControlFlow"/>
      </ownedAttribute>
      <ownedAttribute xmi:id="_cw4GPZpAEeOXzvVK2MY5wA" name="base_InitialNode" association="_cw4GappAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GPppAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GP5pAEeOXzvVK2MY5wA" 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="_cw4GQJpAEeOXzvVK2MY5wA" name="Pin_source" memberEnd="_cw4GQ5pAEeOXzvVK2MY5wA _cw4FVppAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4GQZpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GQppAEeOXzvVK2MY5wA" key="addedInVersion" value="201"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cw4GQ5pAEeOXzvVK2MY5wA" name="extension_source" type="_cw3hRJpAEeOXzvVK2MY5wA" aggregation="composite" association="_cw4GQJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GRJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GRZpAEeOXzvVK2MY5wA" key="addedInVersion" value="201"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_cw4GRppAEeOXzvVK2MY5wA" name="Pin_direction" memberEnd="_cw4GSZpAEeOXzvVK2MY5wA _cw3hGppAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4GR5pAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GSJpAEeOXzvVK2MY5wA" key="addedInVersion" value="201"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cw4GSZpAEeOXzvVK2MY5wA" name="extension_direction" type="_cw3hC5pAEeOXzvVK2MY5wA" aggregation="composite" association="_cw4GRppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GSppAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GS5pAEeOXzvVK2MY5wA" key="addedInVersion" value="201"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_cw4GTJpAEeOXzvVK2MY5wA" name="ActivityParameterNode_source" memberEnd="_cw4GT5pAEeOXzvVK2MY5wA _cw4FWZpAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4GTZpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GTppAEeOXzvVK2MY5wA" key="addedInVersion" value="201"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cw4GT5pAEeOXzvVK2MY5wA" name="extension_source" type="_cw3hRJpAEeOXzvVK2MY5wA" aggregation="composite" association="_cw4GTJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GUJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GUZpAEeOXzvVK2MY5wA" key="addedInVersion" value="201"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_cw4GUppAEeOXzvVK2MY5wA" name="ActivityParameterNode_direction" memberEnd="_cw4GVZpAEeOXzvVK2MY5wA _cw3hHZpAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4GU5pAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GVJpAEeOXzvVK2MY5wA" key="addedInVersion" value="201"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cw4GVZpAEeOXzvVK2MY5wA" name="extension_direction" type="_cw3hC5pAEeOXzvVK2MY5wA" aggregation="composite" association="_cw4GUppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GVppAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GV5pAEeOXzvVK2MY5wA" key="addedInVersion" value="201"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_cw4GWJpAEeOXzvVK2MY5wA" name="FinalNode_CTIEProfile" memberEnd="_cw4GW5pAEeOXzvVK2MY5wA _cw4GNJpAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4GWZpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GWppAEeOXzvVK2MY5wA" key="addedInVersion" value="235"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cw4GW5pAEeOXzvVK2MY5wA" name="extension_CTIEProfile" type="_cw4GGZpAEeOXzvVK2MY5wA" aggregation="composite" association="_cw4GWJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GXJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GXZpAEeOXzvVK2MY5wA" key="addedInVersion" value="235"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_cw4GXppAEeOXzvVK2MY5wA" name="ObjectFlow_CTIEProfile" memberEnd="_cw4GYZpAEeOXzvVK2MY5wA _cw4GN5pAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4GX5pAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GYJpAEeOXzvVK2MY5wA" key="addedInVersion" value="235"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cw4GYZpAEeOXzvVK2MY5wA" name="extension_CTIEProfile" type="_cw4GGZpAEeOXzvVK2MY5wA" aggregation="composite" association="_cw4GXppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GYppAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GY5pAEeOXzvVK2MY5wA" key="addedInVersion" value="235"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_cw4GZJpAEeOXzvVK2MY5wA" name="ControlFlow_CTIEProfile" memberEnd="_cw4GZ5pAEeOXzvVK2MY5wA _cw4GOppAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4GZZpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GZppAEeOXzvVK2MY5wA" key="addedInVersion" value="235"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cw4GZ5pAEeOXzvVK2MY5wA" name="extension_CTIEProfile" type="_cw4GGZpAEeOXzvVK2MY5wA" aggregation="composite" association="_cw4GZJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GaJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GaZpAEeOXzvVK2MY5wA" key="addedInVersion" value="235"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_cw4GappAEeOXzvVK2MY5wA" name="InitialNode_CTIEProfile" memberEnd="_cw4GbZpAEeOXzvVK2MY5wA _cw4GPZpAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4Ga5pAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GbJpAEeOXzvVK2MY5wA" key="addedInVersion" value="238"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cw4GbZpAEeOXzvVK2MY5wA" name="extension_CTIEProfile" type="_cw4GGZpAEeOXzvVK2MY5wA" aggregation="composite" association="_cw4GappAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GbppAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4Gb5pAEeOXzvVK2MY5wA" key="addedInVersion" value="238"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_cw4GcJpAEeOXzvVK2MY5wA" name="procedure">
      <eAnnotations xmi:id="_cw4GcZpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GcppAEeOXzvVK2MY5wA" key="addedInVersion" value="239"/>
      </eAnnotations>
      <generalization xmi:id="_cw4Gc5pAEeOXzvVK2MY5wA" general="_cw4GsppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GdJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GdZpAEeOXzvVK2MY5wA" key="addedInVersion" value="255"/>
        </eAnnotations>
      </generalization>
      <ownedAttribute xmi:id="_cw4GdppAEeOXzvVK2MY5wA" name="base_Activity" association="_cw4GeZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4Gd5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GeJpAEeOXzvVK2MY5wA" 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="_cw4GeZpAEeOXzvVK2MY5wA" name="Activity_Computation" memberEnd="_cw4GfJpAEeOXzvVK2MY5wA _cw4GdppAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4GeppAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4Ge5pAEeOXzvVK2MY5wA" key="addedInVersion" value="239"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cw4GfJpAEeOXzvVK2MY5wA" name="extension_Computation" type="_cw4GcJpAEeOXzvVK2MY5wA" aggregation="composite" association="_cw4GeZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GfZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GfppAEeOXzvVK2MY5wA" key="addedInVersion" value="239"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_cw4Gf5pAEeOXzvVK2MY5wA" name="decision">
      <eAnnotations xmi:id="_cw4GgJpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GgZpAEeOXzvVK2MY5wA" key="addedInVersion" value="239"/>
      </eAnnotations>
      <ownedAttribute xmi:id="_cw4GgppAEeOXzvVK2MY5wA" name="base_DecisionNode" association="_cw4GhZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4Gg5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GhJpAEeOXzvVK2MY5wA" key="addedInVersion" value="239"/>
        </eAnnotations>
        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#DecisionNode"/>
      </ownedAttribute>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_cw4GhZpAEeOXzvVK2MY5wA" name="DecisionNode_Condition" memberEnd="_cw4GiJpAEeOXzvVK2MY5wA _cw4GgppAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4GhppAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4Gh5pAEeOXzvVK2MY5wA" key="addedInVersion" value="239"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cw4GiJpAEeOXzvVK2MY5wA" name="extension_Condition" type="_cw4Gf5pAEeOXzvVK2MY5wA" aggregation="composite" association="_cw4GhZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GiZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GippAEeOXzvVK2MY5wA" key="addedInVersion" value="239"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_cw4Gi5pAEeOXzvVK2MY5wA" name="intermediate">
      <eAnnotations xmi:id="_cw4GjJpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GjZpAEeOXzvVK2MY5wA" key="addedInVersion" value="239"/>
      </eAnnotations>
      <ownedAttribute xmi:id="_cw4GjppAEeOXzvVK2MY5wA" name="base_CentralBufferNode" association="_cw4GkZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4Gj5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GkJpAEeOXzvVK2MY5wA" 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="_cw4GkZpAEeOXzvVK2MY5wA" name="CentralBufferNode_DataBuffer" memberEnd="_cw4GlJpAEeOXzvVK2MY5wA _cw4GjppAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4GkppAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4Gk5pAEeOXzvVK2MY5wA" key="addedInVersion" value="239"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cw4GlJpAEeOXzvVK2MY5wA" name="extension_DataBuffer" type="_cw4Gi5pAEeOXzvVK2MY5wA" aggregation="composite" association="_cw4GkZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GlZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GlppAEeOXzvVK2MY5wA" key="addedInVersion" value="239"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_cw4Gl5pAEeOXzvVK2MY5wA" name="iterative">
      <eAnnotations xmi:id="_cw4GmJpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GmZpAEeOXzvVK2MY5wA" key="addedInVersion" value="255"/>
      </eAnnotations>
      <generalization xmi:id="_cw4GmppAEeOXzvVK2MY5wA" general="_cw4GsppAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4Gm5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GnJpAEeOXzvVK2MY5wA" key="addedInVersion" value="255"/>
        </eAnnotations>
      </generalization>
      <ownedAttribute xmi:id="_cw4GnZpAEeOXzvVK2MY5wA" name="base_ExpansionRegion" association="_cw4GoJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GnppAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4Gn5pAEeOXzvVK2MY5wA" 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="_cw4GoJpAEeOXzvVK2MY5wA" name="ExpansionRegion_iteration" memberEnd="_cw4Go5pAEeOXzvVK2MY5wA _cw4GnZpAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4GoZpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GoppAEeOXzvVK2MY5wA" key="addedInVersion" value="255"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cw4Go5pAEeOXzvVK2MY5wA" name="extension_iteration" type="_cw4Gl5pAEeOXzvVK2MY5wA" aggregation="composite" association="_cw4GoJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GpJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GpZpAEeOXzvVK2MY5wA" key="addedInVersion" value="255"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_cw4GpppAEeOXzvVK2MY5wA" name="iterator">
      <eAnnotations xmi:id="_cw4Gp5pAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GqJpAEeOXzvVK2MY5wA" key="addedInVersion" value="255"/>
      </eAnnotations>
      <ownedAttribute xmi:id="_cw4GqZpAEeOXzvVK2MY5wA" name="base_ExpansionNode" association="_cw4GrJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GqppAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4Gq5pAEeOXzvVK2MY5wA" 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="_cw4GrJpAEeOXzvVK2MY5wA" name="ExpansionNode_iterative_object" memberEnd="_cw4Gr5pAEeOXzvVK2MY5wA _cw4GqZpAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4GrZpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GrppAEeOXzvVK2MY5wA" key="addedInVersion" value="255"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cw4Gr5pAEeOXzvVK2MY5wA" name="extension_iterative_object" type="_cw4GpppAEeOXzvVK2MY5wA" aggregation="composite" association="_cw4GrJpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GsJpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GsZpAEeOXzvVK2MY5wA" key="addedInVersion" value="255"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Stereotype" xmi:id="_cw4GsppAEeOXzvVK2MY5wA" name="prescription" isAbstract="true">
      <eAnnotations xmi:id="_cw4Gs5pAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GtJpAEeOXzvVK2MY5wA" key="addedInVersion" value="255"/>
      </eAnnotations>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_cw4GtZpAEeOXzvVK2MY5wA" name="Activity_context" memberEnd="_cw4GuJpAEeOXzvVK2MY5wA _cw4Fp5pAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4GtppAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4Gt5pAEeOXzvVK2MY5wA" key="addedInVersion" value="311"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cw4GuJpAEeOXzvVK2MY5wA" name="extension_context" type="_cw4FlZpAEeOXzvVK2MY5wA" aggregation="composite" association="_cw4GtZpAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4GuZpAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GuppAEeOXzvVK2MY5wA" key="addedInVersion" value="311"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <packagedElement xmi:type="uml:Extension" xmi:id="_cw4Gu5pAEeOXzvVK2MY5wA" name="Activity_fromlaw" memberEnd="_cw4GvppAEeOXzvVK2MY5wA _cw4FaJpAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4GvJpAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GvZpAEeOXzvVK2MY5wA" key="addedInVersion" value="317"/>
      </eAnnotations>
      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cw4GvppAEeOXzvVK2MY5wA" name="extension_fromlaw" type="_cw4FYppAEeOXzvVK2MY5wA" aggregation="composite" association="_cw4Gu5pAEeOXzvVK2MY5wA">
        <eAnnotations xmi:id="_cw4Gv5pAEeOXzvVK2MY5wA" source="uml2.extensions">
          <details xmi:id="_cw4GwJpAEeOXzvVK2MY5wA" key="addedInVersion" value="317"/>
        </eAnnotations>
      </ownedEnd>
    </packagedElement>
    <profileApplication xmi:id="_cw4GwZpAEeOXzvVK2MY5wA">
      <eAnnotations xmi:id="_cw4GwppAEeOXzvVK2MY5wA" source="http://www.eclipse.org/uml2/2.0.0/UML">
        <references xmi:type="ecore:EPackage" href="ProfileBase.profile.uml#_cw7yuZpAEeOXzvVK2MY5wA"/>
      </eAnnotations>
      <eAnnotations xmi:id="_cw4Gw5pAEeOXzvVK2MY5wA" source="uml2.extensions">
        <details xmi:id="_cw4GxJpAEeOXzvVK2MY5wA" key="addedInVersion" value="1"/>
      </eAnnotations>
      <appliedProfile href="ProfileBase.profile.uml#_cw7yt5pAEeOXzvVK2MY5wA"/>
    </profileApplication>
  </uml:Profile>
  <ProfileBase:ProfileConstraint xmi:id="_cw4GxZpAEeOXzvVK2MY5wA" messageKey="Only one stereotype of type &lt;&lt;source>> can be applied to an Object Node" base_Constraint="_cw3hR5pAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4GxppAEeOXzvVK2MY5wA" messageKey="Only one steretotype &lt;&lt;context>> applied to an activity parameter node is allowed per activity" base_Constraint="_cw4FmJpAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4Gx5pAEeOXzvVK2MY5wA" messageKey="For stereotype &lt;&lt;fromlaw>> the attributes: source, query type and parameters, if query type is LOOKUP TABLE, must be defined" base_Constraint="_cw3gtJpAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4GyJpAEeOXzvVK2MY5wA" messageKey="For stereotype &lt;&lt;fromagent>> the agent type and the question attribute must be defined" base_Constraint="_cw3guppAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4GyZpAEeOXzvVK2MY5wA" 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="_cw3gwJpAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4GyppAEeOXzvVK2MY5wA" 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="_cw3gxppAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4Gy5pAEeOXzvVK2MY5wA" messageKey="You cannot apply simulataniousely stereotypes &lt;&lt;calculate>> and &lt;&lt;assert>>" base_Constraint="_cw4FgJpAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4GzJpAEeOXzvVK2MY5wA" messageKey="For each stereotype &lt;&lt;assert>> the attribute constraint of the comment stereotype by &lt;&lt;constraint>> cannot be empty" base_Constraint="_cw4F7JpAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4GzZpAEeOXzvVK2MY5wA" messageKey="For each stereotype &lt;&lt;calculate>> the attribute constraint of the comment stereotype by &lt;&lt;formula>> cannot be empty" base_Constraint="_cw4F2ppAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4GzppAEeOXzvVK2MY5wA" messageKey="We can apply either the stereotype &lt;&lt;constraint>> or &lt;&lt;formula>>, not both" base_Constraint="_cw4FxZpAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4Gz5pAEeOXzvVK2MY5wA" messageKey="You need to define a constraint to be checked" base_Constraint="_cw4FjJpAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4G0JpAEeOXzvVK2MY5wA" messageKey="You need to define a constraint in a that calculate the output parameter" base_Constraint="_cw3gqJpAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4G0ZpAEeOXzvVK2MY5wA" 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="_cw3hTZpAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4G0ppAEeOXzvVK2MY5wA" messageKey="Each comment with stereotype &lt;&lt;formula>> must be applied to an activity node sith stereotype &lt;&lt;calculate>>" base_Constraint="_cw4F4JpAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4G05pAEeOXzvVK2MY5wA" messageKey="Each comment with stereotype &lt;&lt;constraint>> must be applied to an activity node sith stereotype &lt;&lt;assert>>" base_Constraint="_cw4F8ppAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4G1JpAEeOXzvVK2MY5wA" messageKey="Object Node can be only in or out not both" base_Constraint="_cw3hDppAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4G1ZpAEeOXzvVK2MY5wA" messageKey="Only Opaque Action Nodes are authorized" base_Constraint="_cw4GHJpAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4G1ppAEeOXzvVK2MY5wA" messageKey="Only Decision Nodes are authorized" base_Constraint="_cw4GIppAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4G15pAEeOXzvVK2MY5wA" messageKey="Only Pins and Activity Parameter Nodes are authorized" base_Constraint="_cw4GKJpAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4G2JpAEeOXzvVK2MY5wA" messageKey="Only Iterative Expansion Regions are authorized" base_Constraint="_cw4GLppAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4G2ZpAEeOXzvVK2MY5wA" messageKey="An Activity Parameter Node with direction IN must have applied stereotype &lt;&lt;in>>" base_Constraint="_cw3hI5pAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4G2ppAEeOXzvVK2MY5wA" messageKey="Pin with stereotype &lt;&lt;in>> must be type of Input Pin" base_Constraint="_cw3hKZpAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4G25pAEeOXzvVK2MY5wA" messageKey="Pin with stereotype &lt;&lt;out>> must be type of Output Pin" base_Constraint="_cw3hNZpAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4G3JpAEeOXzvVK2MY5wA" messageKey="An Activity Parameter Node with direction IN must have applied stereotype &lt;&lt;in>>" base_Constraint="_cw3hO5pAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4G3ZpAEeOXzvVK2MY5wA" base_Constraint="_cw3hU5pAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4G3ppAEeOXzvVK2MY5wA" base_Constraint="_cw4FUJpAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4G35pAEeOXzvVK2MY5wA" base_Constraint="_cw3hFJpAEeOXzvVK2MY5wA"/>
  <ProfileBase:ProfileConstraint xmi:id="_cw4G4JpAEeOXzvVK2MY5wA" messageKey="The context of the activity must be specified" base_Constraint="_cw4FnppAEeOXzvVK2MY5wA"/>
</xmi:XMI>
