metamodel
Robot
behaviours
sensors
actuators
actions
name
Actuator
name
DifferentialWheel
isLeft
speed
Group
wheels
ActionWheel
group
speed
TurnLeft
Forward
Stopping
Backward
TurnRight
Action
DistanceSensor
LightSensor
Sensor
value
name
sensorName
Value
value
name
Type
BoolVal
value
FloatVal
value
IntVal
value
Behaviour
stateMachine
name
priority
StateMachine
states
name
constants
State
transitions
workingAction
name
isInitial
onEnterAction
onLeaveAction
uid
Transition
dstId
cond
nameIn
Condition
UnaryOperator
valeur
BinaryOperator
operandLeft
OperandRight
BinaryCond
operandRight
operandLeft
Or
And
UnaryCond
child
Negation
Equal
Less
More
Different
LessOrEqual
MoreOrEqual
Add
Sub
Negative
Positive
Operator
<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="metamodel" nsURI="http://metamodel/1.0" nsPrefix="metamodel">
  <eAnnotations source="http://www.eclipse.org/OCL/Import">
    <details key="ecore" value="http://www.eclipse.org/emf/2002/Ecore#/"/>
  </eAnnotations>
  <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
    <details key="invocationDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot"/>
    <details key="settingDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot"/>
    <details key="validationDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot"/>
  </eAnnotations>
  <eClassifiers xsi:type="ecore:EClass" name="Robot">
    <eStructuralFeatures xsi:type="ecore:EReference" name="behaviours" upperBound="-1"
        eType="#//Behaviour" containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="sensors" upperBound="-1"
        eType="#//Sensor" containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="actuators" upperBound="-1"
        eType="#//Actuator" containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="actions" upperBound="-1"
        eType="#//Action" containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Actuator" abstract="true">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="DifferentialWheel" eSuperTypes="#//Actuator">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="isLeft" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="speed" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Group" eSuperTypes="#//Actuator">
    <eStructuralFeatures xsi:type="ecore:EReference" name="wheels" lowerBound="2"
        upperBound="2" eType="#//DifferentialWheel"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ActionWheel" abstract="true" eSuperTypes="#//Action">
    <eStructuralFeatures xsi:type="ecore:EReference" name="group" lowerBound="1" eType="#//Group"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="speed" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="TurnLeft" eSuperTypes="#//ActionWheel"/>
  <eClassifiers xsi:type="ecore:EClass" name="Forward" eSuperTypes="#//ActionWheel"/>
  <eClassifiers xsi:type="ecore:EClass" name="Stopping" eSuperTypes="#//ActionWheel"/>
  <eClassifiers xsi:type="ecore:EClass" name="Backward" eSuperTypes="#//ActionWheel"/>
  <eClassifiers xsi:type="ecore:EClass" name="TurnRight" eSuperTypes="#//ActionWheel"/>
  <eClassifiers xsi:type="ecore:EClass" name="Action" abstract="true"/>
  <eClassifiers xsi:type="ecore:EClass" name="DistanceSensor" eSuperTypes="#//Sensor"/>
  <eClassifiers xsi:type="ecore:EClass" name="LightSensor" eSuperTypes="#//Sensor"/>
  <eClassifiers xsi:type="ecore:EClass" name="Sensor" abstract="true">
    <eStructuralFeatures xsi:type="ecore:EReference" name="value" lowerBound="1" eType="#//Value"
        containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="sensorName" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Value">
    <eStructuralFeatures xsi:type="ecore:EReference" name="value" lowerBound="1" eType="#//Type"
        containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Type" abstract="true"/>
  <eClassifiers xsi:type="ecore:EClass" name="BoolVal" eSuperTypes="#//Type">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="FloatVal" eSuperTypes="#//Type">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="IntVal" eSuperTypes="#//Type">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Behaviour">
    <eStructuralFeatures xsi:type="ecore:EReference" name="stateMachine" lowerBound="1"
        eType="#//StateMachine" containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="priority" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="StateMachine">
    <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
      <details key="constraints" value="StateUidUnique StateTransitionDestination"/>
    </eAnnotations>
    <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
      <details key="StateUidUnique" value="&#xA;&#x9;&#x9;&#x9;self.states->collect(s : State | s.uid)->isUnique(n : Integer | n)"/>
      <details key="StateTransitionDestination" value="&#xA;&#x9;&#x9; &#x9;states->select(s : State | s.transitions->select(t: Transition | t.dstId = s)->notEmpty())->size() = 0"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="states" upperBound="-1"
        eType="#//State" containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="constants" upperBound="-1"
        eType="#//Value" containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="State">
    <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
      <details key="constraints" value="TransitionsUniqueName"/>
    </eAnnotations>
    <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
      <details key="TransitionsUniqueName" value="&#xA;&#x9;&#x9;transitions->collect(t : Transition | t.nameIn)->isUnique(n : String | n)"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="transitions" upperBound="-1"
        eType="#//Transition" containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="workingAction" eType="#//Action"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="isInitial" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="onEnterAction" eType="#//Action"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="onLeaveAction" eType="#//Action"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="uid" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Transition">
    <eStructuralFeatures xsi:type="ecore:EReference" name="dstId" lowerBound="1" eType="#//State"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="cond" lowerBound="1" eType="#//Condition"
        containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="nameIn" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Condition" abstract="true"/>
  <eClassifiers xsi:type="ecore:EClass" name="UnaryOperator" abstract="true" eSuperTypes="#//Operator">
    <eStructuralFeatures xsi:type="ecore:EReference" name="valeur" lowerBound="1"
        eType="#//Value"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="BinaryOperator" abstract="true" eSuperTypes="#//Operator">
    <eStructuralFeatures xsi:type="ecore:EReference" name="operandLeft" lowerBound="1"
        eType="#//Operator" containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="OperandRight" lowerBound="1"
        eType="#//Operator" containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="BinaryCond" abstract="true" eSuperTypes="#//Condition">
    <eStructuralFeatures xsi:type="ecore:EReference" name="operandRight" lowerBound="1"
        eType="#//Condition" containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="operandLeft" lowerBound="1"
        eType="#//Condition" containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Or" eSuperTypes="#//BinaryCond"/>
  <eClassifiers xsi:type="ecore:EClass" name="And" eSuperTypes="#//BinaryCond"/>
  <eClassifiers xsi:type="ecore:EClass" name="UnaryCond" abstract="true" eSuperTypes="#//Condition">
    <eStructuralFeatures xsi:type="ecore:EReference" name="child" lowerBound="1" eType="#//Condition"
        containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Negation" eSuperTypes="#//UnaryCond"/>
  <eClassifiers xsi:type="ecore:EClass" name="Equal" eSuperTypes="#//BinaryOperator"/>
  <eClassifiers xsi:type="ecore:EClass" name="Less" eSuperTypes="#//BinaryOperator"/>
  <eClassifiers xsi:type="ecore:EClass" name="More" eSuperTypes="#//BinaryOperator"/>
  <eClassifiers xsi:type="ecore:EClass" name="Different" eSuperTypes="#//BinaryOperator"/>
  <eClassifiers xsi:type="ecore:EClass" name="LessOrEqual" eSuperTypes="#//BinaryOperator"/>
  <eClassifiers xsi:type="ecore:EClass" name="MoreOrEqual" eSuperTypes="#//BinaryOperator"/>
  <eClassifiers xsi:type="ecore:EClass" name="Add" eSuperTypes="#//BinaryOperator"/>
  <eClassifiers xsi:type="ecore:EClass" name="Sub" eSuperTypes="#//BinaryOperator"/>
  <eClassifiers xsi:type="ecore:EClass" name="Negative" eSuperTypes="#//UnaryOperator"/>
  <eClassifiers xsi:type="ecore:EClass" name="Positive" eSuperTypes="#//UnaryOperator"/>
  <eClassifiers xsi:type="ecore:EClass" name="Operator" abstract="true" eSuperTypes="#//Condition"/>
</ecore:EPackage>

{"directed":true,"nodes":[{"nsPrefix":"metamodel","nsURI":"http://metamodel/1.0","name":"metamodel","id":0,"eClass":"EPackage"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Robot","instanceClass":null,"abstract":false,"id":1,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Actuator","instanceClass":null,"abstract":true,"id":2,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"DifferentialWheel","instanceClass":null,"abstract":false,"id":3,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Group","instanceClass":null,"abstract":false,"id":4,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"ActionWheel","instanceClass":null,"abstract":true,"id":5,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"TurnLeft","instanceClass":null,"abstract":false,"id":6,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Forward","instanceClass":null,"abstract":false,"id":7,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Stopping","instanceClass":null,"abstract":false,"id":8,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Backward","instanceClass":null,"abstract":false,"id":9,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"TurnRight","instanceClass":null,"abstract":false,"id":10,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Action","instanceClass":null,"abstract":true,"id":11,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"DistanceSensor","instanceClass":null,"abstract":false,"id":12,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"LightSensor","instanceClass":null,"abstract":false,"id":13,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Sensor","instanceClass":null,"abstract":true,"id":14,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Value","instanceClass":null,"abstract":false,"id":15,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Type","instanceClass":null,"abstract":true,"id":16,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"BoolVal","instanceClass":null,"abstract":false,"id":17,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"FloatVal","instanceClass":null,"abstract":false,"id":18,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"IntVal","instanceClass":null,"abstract":false,"id":19,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Behaviour","instanceClass":null,"abstract":false,"id":20,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"StateMachine","instanceClass":null,"abstract":false,"id":21,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"State","instanceClass":null,"abstract":false,"id":22,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Transition","instanceClass":null,"abstract":false,"id":23,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Condition","instanceClass":null,"abstract":true,"id":24,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"UnaryOperator","instanceClass":null,"abstract":true,"id":25,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"BinaryOperator","instanceClass":null,"abstract":true,"id":26,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"BinaryCond","instanceClass":null,"abstract":true,"id":27,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Or","instanceClass":null,"abstract":false,"id":28,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"And","instanceClass":null,"abstract":false,"id":29,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"UnaryCond","instanceClass":null,"abstract":true,"id":30,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Negation","instanceClass":null,"abstract":false,"id":31,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Equal","instanceClass":null,"abstract":false,"id":32,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Less","instanceClass":null,"abstract":false,"id":33,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"More","instanceClass":null,"abstract":false,"id":34,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Different","instanceClass":null,"abstract":false,"id":35,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"LessOrEqual","instanceClass":null,"abstract":false,"id":36,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"MoreOrEqual","instanceClass":null,"abstract":false,"id":37,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Add","instanceClass":null,"abstract":false,"id":38,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Sub","instanceClass":null,"abstract":false,"id":39,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Negative","instanceClass":null,"abstract":false,"id":40,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Positive","instanceClass":null,"abstract":false,"id":41,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Operator","instanceClass":null,"abstract":true,"id":42,"interface":false,"eClass":"EClass"},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"behaviours","changeable":true,"resolveProxies":true,"lowerBound":0,"id":43,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"sensors","changeable":true,"resolveProxies":true,"lowerBound":0,"id":44,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"actuators","changeable":true,"resolveProxies":true,"lowerBound":0,"id":45,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"actions","changeable":true,"resolveProxies":true,"lowerBound":0,"id":46,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"name","changeable":true,"lowerBound":1,"iD":false,"id":47,"derived":false},{"id":48,"eClass":"EGenericType"},{"id":49,"eClass":"EGenericType"},{"id":50,"eClass":"EGenericType"},{"id":51,"eClass":"EGenericType"},{"id":52,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"name","changeable":true,"lowerBound":1,"iD":false,"id":53,"derived":false},{"id":54,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"isLeft","changeable":true,"lowerBound":1,"iD":false,"id":55,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":0,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"speed","changeable":true,"lowerBound":1,"iD":false,"id":56,"derived":false},{"id":57,"eClass":"EGenericType"},{"id":58,"eClass":"EGenericType"},{"id":59,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":2,"defaultValue":null,"volatile":false,"many":true,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"wheels","changeable":true,"resolveProxies":true,"lowerBound":2,"id":60,"derived":false},{"id":61,"eClass":"EGenericType"},{"id":62,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"group","changeable":true,"resolveProxies":true,"lowerBound":1,"id":63,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":0,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"speed","changeable":true,"lowerBound":1,"iD":false,"id":64,"derived":false},{"id":65,"eClass":"EGenericType"},{"id":66,"eClass":"EGenericType"},{"id":67,"eClass":"EGenericType"},{"id":68,"eClass":"EGenericType"},{"id":69,"eClass":"EGenericType"},{"id":70,"eClass":"EGenericType"},{"id":71,"eClass":"EGenericType"},{"id":72,"eClass":"EGenericType"},{"id":73,"eClass":"EGenericType"},{"id":74,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"value","changeable":true,"resolveProxies":true,"lowerBound":1,"id":75,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"name","changeable":true,"lowerBound":1,"iD":false,"id":76,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"sensorName","changeable":true,"lowerBound":1,"iD":false,"id":77,"derived":false},{"id":78,"eClass":"EGenericType"},{"id":79,"eClass":"EGenericType"},{"id":80,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"value","changeable":true,"resolveProxies":true,"lowerBound":1,"id":81,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"name","changeable":true,"lowerBound":0,"iD":false,"id":82,"derived":false},{"id":83,"eClass":"EGenericType"},{"id":84,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"value","changeable":true,"lowerBound":1,"iD":false,"id":85,"derived":false},{"id":86,"eClass":"EGenericType"},{"id":87,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":0.0,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"value","changeable":true,"lowerBound":1,"iD":false,"id":88,"derived":false},{"id":89,"eClass":"EGenericType"},{"id":90,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":0,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"value","changeable":true,"lowerBound":1,"iD":false,"id":91,"derived":false},{"id":92,"eClass":"EGenericType"},{"id":93,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"stateMachine","changeable":true,"resolveProxies":true,"lowerBound":1,"id":94,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"name","changeable":true,"lowerBound":1,"iD":false,"id":95,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":0,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"priority","changeable":true,"lowerBound":1,"iD":false,"id":96,"derived":false},{"id":97,"eClass":"EGenericType"},{"id":98,"eClass":"EGenericType"},{"id":99,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"states","changeable":true,"resolveProxies":true,"lowerBound":0,"id":100,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"name","changeable":true,"lowerBound":1,"iD":false,"id":101,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"constants","changeable":true,"resolveProxies":true,"lowerBound":0,"id":102,"derived":false},{"id":103,"eClass":"EGenericType"},{"id":104,"eClass":"EGenericType"},{"id":105,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"transitions","changeable":true,"resolveProxies":true,"lowerBound":0,"id":106,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"workingAction","changeable":true,"resolveProxies":true,"lowerBound":0,"id":107,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"name","changeable":true,"lowerBound":1,"iD":false,"id":108,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"isInitial","changeable":true,"lowerBound":1,"iD":false,"id":109,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"onEnterAction","changeable":true,"resolveProxies":true,"lowerBound":0,"id":110,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"onLeaveAction","changeable":true,"resolveProxies":true,"lowerBound":0,"id":111,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":0,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"uid","changeable":true,"lowerBound":1,"iD":false,"id":112,"derived":false},{"id":113,"eClass":"EGenericType"},{"id":114,"eClass":"EGenericType"},{"id":115,"eClass":"EGenericType"},{"id":116,"eClass":"EGenericType"},{"id":117,"eClass":"EGenericType"},{"id":118,"eClass":"EGenericType"},{"id":119,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"dstId","changeable":true,"resolveProxies":true,"lowerBound":1,"id":120,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"cond","changeable":true,"resolveProxies":true,"lowerBound":1,"id":121,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"nameIn","changeable":true,"lowerBound":1,"iD":false,"id":122,"derived":false},{"id":123,"eClass":"EGenericType"},{"id":124,"eClass":"EGenericType"},{"id":125,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"valeur","changeable":true,"resolveProxies":true,"lowerBound":1,"id":126,"derived":false},{"id":127,"eClass":"EGenericType"},{"id":128,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"operandLeft","changeable":true,"resolveProxies":true,"lowerBound":1,"id":129,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"OperandRight","changeable":true,"resolveProxies":true,"lowerBound":1,"id":130,"derived":false},{"id":131,"eClass":"EGenericType"},{"id":132,"eClass":"EGenericType"},{"id":133,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"operandRight","changeable":true,"resolveProxies":true,"lowerBound":1,"id":134,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"operandLeft","changeable":true,"resolveProxies":true,"lowerBound":1,"id":135,"derived":false},{"id":136,"eClass":"EGenericType"},{"id":137,"eClass":"EGenericType"},{"id":138,"eClass":"EGenericType"},{"id":139,"eClass":"EGenericType"},{"id":140,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"child","changeable":true,"resolveProxies":true,"lowerBound":1,"id":141,"derived":false},{"id":142,"eClass":"EGenericType"},{"id":143,"eClass":"EGenericType"},{"id":144,"eClass":"EGenericType"},{"id":145,"eClass":"EGenericType"},{"id":146,"eClass":"EGenericType"},{"id":147,"eClass":"EGenericType"},{"id":148,"eClass":"EGenericType"},{"id":149,"eClass":"EGenericType"},{"id":150,"eClass":"EGenericType"},{"id":151,"eClass":"EGenericType"},{"id":152,"eClass":"EGenericType"},{"id":153,"eClass":"EGenericType"},{"id":154,"eClass":"EGenericType"},{"id":155,"eClass":"EGenericType"}],"links":[{"source":0,"target":1},{"source":0,"target":2},{"source":0,"target":3},{"source":0,"target":4},{"source":0,"target":5},{"source":0,"target":6},{"source":0,"target":7},{"source":0,"target":8},{"source":0,"target":9},{"source":0,"target":10},{"source":0,"target":11},{"source":0,"target":12},{"source":0,"target":13},{"source":0,"target":14},{"source":0,"target":15},{"source":0,"target":16},{"source":0,"target":17},{"source":0,"target":18},{"source":0,"target":19},{"source":0,"target":20},{"source":0,"target":21},{"source":0,"target":22},{"source":0,"target":23},{"source":0,"target":24},{"source":0,"target":25},{"source":0,"target":26},{"source":0,"target":27},{"source":0,"target":28},{"source":0,"target":29},{"source":0,"target":30},{"source":0,"target":31},{"source":0,"target":32},{"source":0,"target":33},{"source":0,"target":34},{"source":0,"target":35},{"source":0,"target":36},{"source":0,"target":37},{"source":0,"target":38},{"source":0,"target":39},{"source":0,"target":40},{"source":0,"target":41},{"source":0,"target":42},{"source":1,"target":0},{"source":1,"target":43},{"source":1,"target":44},{"source":1,"target":45},{"source":1,"target":46},{"source":1,"target":47},{"source":43,"target":20},{"source":43,"target":48},{"source":43,"target":1},{"source":48,"target":20},{"source":44,"target":14},{"source":44,"target":49},{"source":44,"target":1},{"source":49,"target":14},{"source":45,"target":2},{"source":45,"target":50},{"source":45,"target":1},{"source":50,"target":2},{"source":46,"target":11},{"source":46,"target":51},{"source":46,"target":1},{"source":51,"target":11},{"source":47,"target":52},{"source":47,"target":1},{"source":2,"target":0},{"source":2,"target":53},{"source":53,"target":54},{"source":53,"target":2},{"source":3,"target":0},{"source":3,"target":2},{"source":3,"target":55},{"source":3,"target":56},{"source":3,"target":57},{"source":55,"target":58},{"source":55,"target":3},{"source":56,"target":59},{"source":56,"target":3},{"source":57,"target":2},{"source":4,"target":0},{"source":4,"target":2},{"source":4,"target":60},{"source":4,"target":61},{"source":60,"target":3},{"source":60,"target":62},{"source":60,"target":4},{"source":62,"target":3},{"source":61,"target":2},{"source":5,"target":0},{"source":5,"target":11},{"source":5,"target":63},{"source":5,"target":64},{"source":5,"target":65},{"source":63,"target":4},{"source":63,"target":66},{"source":63,"target":5},{"source":66,"target":4},{"source":64,"target":67},{"source":64,"target":5},{"source":65,"target":11},{"source":6,"target":0},{"source":6,"target":5},{"source":6,"target":68},{"source":68,"target":5},{"source":7,"target":0},{"source":7,"target":5},{"source":7,"target":69},{"source":69,"target":5},{"source":8,"target":0},{"source":8,"target":5},{"source":8,"target":70},{"source":70,"target":5},{"source":9,"target":0},{"source":9,"target":5},{"source":9,"target":71},{"source":71,"target":5},{"source":10,"target":0},{"source":10,"target":5},{"source":10,"target":72},{"source":72,"target":5},{"source":11,"target":0},{"source":12,"target":0},{"source":12,"target":14},{"source":12,"target":73},{"source":73,"target":14},{"source":13,"target":0},{"source":13,"target":14},{"source":13,"target":74},{"source":74,"target":14},{"source":14,"target":0},{"source":14,"target":75},{"source":14,"target":76},{"source":14,"target":77},{"source":75,"target":15},{"source":75,"target":78},{"source":75,"target":14},{"source":78,"target":15},{"source":76,"target":79},{"source":76,"target":14},{"source":77,"target":80},{"source":77,"target":14},{"source":15,"target":0},{"source":15,"target":81},{"source":15,"target":82},{"source":81,"target":16},{"source":81,"target":83},{"source":81,"target":15},{"source":83,"target":16},{"source":82,"target":84},{"source":82,"target":15},{"source":16,"target":0},{"source":17,"target":0},{"source":17,"target":16},{"source":17,"target":85},{"source":17,"target":86},{"source":85,"target":87},{"source":85,"target":17},{"source":86,"target":16},{"source":18,"target":0},{"source":18,"target":16},{"source":18,"target":88},{"source":18,"target":89},{"source":88,"target":90},{"source":88,"target":18},{"source":89,"target":16},{"source":19,"target":0},{"source":19,"target":16},{"source":19,"target":91},{"source":19,"target":92},{"source":91,"target":93},{"source":91,"target":19},{"source":92,"target":16},{"source":20,"target":0},{"source":20,"target":94},{"source":20,"target":95},{"source":20,"target":96},{"source":94,"target":21},{"source":94,"target":97},{"source":94,"target":20},{"source":97,"target":21},{"source":95,"target":98},{"source":95,"target":20},{"source":96,"target":99},{"source":96,"target":20},{"source":21,"target":0},{"source":21,"target":100},{"source":21,"target":101},{"source":21,"target":102},{"source":100,"target":22},{"source":100,"target":103},{"source":100,"target":21},{"source":103,"target":22},{"source":101,"target":104},{"source":101,"target":21},{"source":102,"target":15},{"source":102,"target":105},{"source":102,"target":21},{"source":105,"target":15},{"source":22,"target":0},{"source":22,"target":106},{"source":22,"target":107},{"source":22,"target":108},{"source":22,"target":109},{"source":22,"target":110},{"source":22,"target":111},{"source":22,"target":112},{"source":106,"target":23},{"source":106,"target":113},{"source":106,"target":22},{"source":113,"target":23},{"source":107,"target":11},{"source":107,"target":114},{"source":107,"target":22},{"source":114,"target":11},{"source":108,"target":115},{"source":108,"target":22},{"source":109,"target":116},{"source":109,"target":22},{"source":110,"target":11},{"source":110,"target":117},{"source":110,"target":22},{"source":117,"target":11},{"source":111,"target":11},{"source":111,"target":118},{"source":111,"target":22},{"source":118,"target":11},{"source":112,"target":119},{"source":112,"target":22},{"source":23,"target":0},{"source":23,"target":120},{"source":23,"target":121},{"source":23,"target":122},{"source":120,"target":22},{"source":120,"target":123},{"source":120,"target":23},{"source":123,"target":22},{"source":121,"target":24},{"source":121,"target":124},{"source":121,"target":23},{"source":124,"target":24},{"source":122,"target":125},{"source":122,"target":23},{"source":24,"target":0},{"source":25,"target":0},{"source":25,"target":42},{"source":25,"target":126},{"source":25,"target":127},{"source":126,"target":15},{"source":126,"target":128},{"source":126,"target":25},{"source":128,"target":15},{"source":127,"target":42},{"source":26,"target":0},{"source":26,"target":42},{"source":26,"target":129},{"source":26,"target":130},{"source":26,"target":131},{"source":129,"target":42},{"source":129,"target":132},{"source":129,"target":26},{"source":132,"target":42},{"source":130,"target":42},{"source":130,"target":133},{"source":130,"target":26},{"source":133,"target":42},{"source":131,"target":42},{"source":27,"target":0},{"source":27,"target":24},{"source":27,"target":134},{"source":27,"target":135},{"source":27,"target":136},{"source":134,"target":24},{"source":134,"target":137},{"source":134,"target":27},{"source":137,"target":24},{"source":135,"target":24},{"source":135,"target":138},{"source":135,"target":27},{"source":138,"target":24},{"source":136,"target":24},{"source":28,"target":0},{"source":28,"target":27},{"source":28,"target":139},{"source":139,"target":27},{"source":29,"target":0},{"source":29,"target":27},{"source":29,"target":140},{"source":140,"target":27},{"source":30,"target":0},{"source":30,"target":24},{"source":30,"target":141},{"source":30,"target":142},{"source":141,"target":24},{"source":141,"target":143},{"source":141,"target":30},{"source":143,"target":24},{"source":142,"target":24},{"source":31,"target":0},{"source":31,"target":30},{"source":31,"target":144},{"source":144,"target":30},{"source":32,"target":0},{"source":32,"target":26},{"source":32,"target":145},{"source":145,"target":26},{"source":33,"target":0},{"source":33,"target":26},{"source":33,"target":146},{"source":146,"target":26},{"source":34,"target":0},{"source":34,"target":26},{"source":34,"target":147},{"source":147,"target":26},{"source":35,"target":0},{"source":35,"target":26},{"source":35,"target":148},{"source":148,"target":26},{"source":36,"target":0},{"source":36,"target":26},{"source":36,"target":149},{"source":149,"target":26},{"source":37,"target":0},{"source":37,"target":26},{"source":37,"target":150},{"source":150,"target":26},{"source":38,"target":0},{"source":38,"target":26},{"source":38,"target":151},{"source":151,"target":26},{"source":39,"target":0},{"source":39,"target":26},{"source":39,"target":152},{"source":152,"target":26},{"source":40,"target":0},{"source":40,"target":25},{"source":40,"target":153},{"source":153,"target":25},{"source":41,"target":0},{"source":41,"target":25},{"source":41,"target":154},{"source":154,"target":25},{"source":42,"target":0},{"source":42,"target":24},{"source":42,"target":155},{"source":155,"target":24}],"multigraph":true}