Legolang
Robot
OrderRobot
EReference0
move
bip
turn
stopEngine
display
turnAngle
obstacle
hasTurned
controlflow
tantqueue
instrTTque
Cdt
si
cdt
instrSi
Expr
EReference0
fonction
operator
opUnaire
opBinaire
EReference0
LeftSon
RightSon
not
and
ExprBool
EReference2
Program
EReferenc0
<?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="Legolang" nsURI="Lego-lg" nsPrefix="Lego">
  <eSubpackages name="Robot" nsURI="Lego-lg.legorb" nsPrefix="lego_rb">
    <eClassifiers xsi:type="ecore:EClass" name="OrderRobot">
      <eStructuralFeatures xsi:type="ecore:EReference" name="EReference0" upperBound="-1"
          eType="#//controlflow/Expr"/>
    </eClassifiers>
    <eClassifiers xsi:type="ecore:EClass" name="move" eSuperTypes="#//Robot/OrderRobot"/>
    <eClassifiers xsi:type="ecore:EClass" name="bip" eSuperTypes="#//Robot/OrderRobot"/>
    <eClassifiers xsi:type="ecore:EClass" name="turn" eSuperTypes="#//Robot/OrderRobot"/>
    <eClassifiers xsi:type="ecore:EClass" name="stopEngine" eSuperTypes="#//Robot/OrderRobot"/>
    <eClassifiers xsi:type="ecore:EClass" name="display" eSuperTypes="#//Robot/OrderRobot"/>
    <eClassifiers xsi:type="ecore:EClass" name="turnAngle" eSuperTypes="#//Robot/OrderRobot"/>
    <eClassifiers xsi:type="ecore:EClass" name="obstacle" eSuperTypes="#//Robot/OrderRobot"/>
    <eClassifiers xsi:type="ecore:EClass" name="hasTurned" eSuperTypes="#//Robot/OrderRobot"/>
  </eSubpackages>
  <eSubpackages name="controlflow" nsURI="Lego-lg.lego_controlflow" nsPrefix="legoCf">
    <eClassifiers xsi:type="ecore:EClass" name="tantqueue" eSuperTypes="#//controlflow/Expr">
      <eStructuralFeatures xsi:type="ecore:EReference" name="instrTTque" eType="#//controlflow/Expr"/>
      <eStructuralFeatures xsi:type="ecore:EReference" name="Cdt" eType="#//controlflow/ExprBool"/>
    </eClassifiers>
    <eClassifiers xsi:type="ecore:EClass" name="si" eSuperTypes="#//controlflow/Expr">
      <eStructuralFeatures xsi:type="ecore:EReference" name="cdt" eType="#//controlflow/ExprBool"/>
      <eStructuralFeatures xsi:type="ecore:EReference" name="instrSi" upperBound="-1"
          eType="#//controlflow/Expr"/>
    </eClassifiers>
    <eClassifiers xsi:type="ecore:EClass" name="Expr">
      <eStructuralFeatures xsi:type="ecore:EReference" name="EReference0" eType="#//controlflow/tantqueue"/>
      <eStructuralFeatures xsi:type="ecore:EReference" name="fonction" upperBound="-1"
          eType="#//Robot/OrderRobot"/>
    </eClassifiers>
    <eClassifiers xsi:type="ecore:EClass" name="operator"/>
    <eClassifiers xsi:type="ecore:EClass" name="opUnaire" eSuperTypes="#//controlflow/operator #//controlflow/ExprBool"/>
    <eClassifiers xsi:type="ecore:EClass" name="opBinaire" eSuperTypes="#//controlflow/operator">
      <eStructuralFeatures xsi:type="ecore:EReference" name="EReference0" eType="#//controlflow/opBinaire"/>
      <eStructuralFeatures xsi:type="ecore:EReference" name="LeftSon" lowerBound="1"
          eType="#//controlflow/ExprBool"/>
      <eStructuralFeatures xsi:type="ecore:EReference" name="RightSon" lowerBound="1"
          eType="#//controlflow/ExprBool"/>
    </eClassifiers>
    <eClassifiers xsi:type="ecore:EClass" name="not" eSuperTypes="#//controlflow/opUnaire"/>
    <eClassifiers xsi:type="ecore:EClass" name="and" eSuperTypes="#//controlflow/opBinaire"/>
    <eClassifiers xsi:type="ecore:EClass" name="ExprBool" eSuperTypes="#//controlflow/Expr">
      <eStructuralFeatures xsi:type="ecore:EReference" name="EReference2" eType="#//controlflow/tantqueue"/>
    </eClassifiers>
    <eClassifiers xsi:type="ecore:EClass" name="Program">
      <eStructuralFeatures xsi:type="ecore:EReference" name="EReferenc0" upperBound="-1"
          eType="#//controlflow/Expr"/>
    </eClassifiers>
  </eSubpackages>
</ecore:EPackage>

{"directed":true,"nodes":[{"nsPrefix":"Lego","nsURI":"Lego-lg","name":"Legolang","id":0,"eClass":"EPackage"},{"nsPrefix":"lego_rb","nsURI":"Lego-lg.legorb","name":"Robot","id":1,"eClass":"EPackage"},{"nsPrefix":"legoCf","nsURI":"Lego-lg.lego_controlflow","name":"controlflow","id":2,"eClass":"EPackage"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"OrderRobot","instanceClass":null,"abstract":false,"id":3,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"move","instanceClass":null,"abstract":false,"id":4,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"bip","instanceClass":null,"abstract":false,"id":5,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"turn","instanceClass":null,"abstract":false,"id":6,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"stopEngine","instanceClass":null,"abstract":false,"id":7,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"display","instanceClass":null,"abstract":false,"id":8,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"turnAngle","instanceClass":null,"abstract":false,"id":9,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"obstacle","instanceClass":null,"abstract":false,"id":10,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"hasTurned","instanceClass":null,"abstract":false,"id":11,"interface":false,"eClass":"EClass"},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"EReference0","changeable":true,"resolveProxies":true,"lowerBound":0,"id":12,"derived":false},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Expr","instanceClass":null,"abstract":false,"id":13,"interface":false,"eClass":"EClass"},{"id":14,"eClass":"EGenericType"},{"id":15,"eClass":"EGenericType"},{"id":16,"eClass":"EGenericType"},{"id":17,"eClass":"EGenericType"},{"id":18,"eClass":"EGenericType"},{"id":19,"eClass":"EGenericType"},{"id":20,"eClass":"EGenericType"},{"id":21,"eClass":"EGenericType"},{"id":22,"eClass":"EGenericType"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"tantqueue","instanceClass":null,"abstract":false,"id":23,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"si","instanceClass":null,"abstract":false,"id":24,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"operator","instanceClass":null,"abstract":false,"id":25,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"opUnaire","instanceClass":null,"abstract":false,"id":26,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"opBinaire","instanceClass":null,"abstract":false,"id":27,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"not","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":"ExprBool","instanceClass":null,"abstract":false,"id":30,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Program","instanceClass":null,"abstract":false,"id":31,"interface":false,"eClass":"EClass"},{"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":"instrTTque","changeable":true,"resolveProxies":true,"lowerBound":0,"id":32,"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":"Cdt","changeable":true,"resolveProxies":true,"lowerBound":0,"id":33,"derived":false},{"id":34,"eClass":"EGenericType"},{"id":35,"eClass":"EGenericType"},{"id":36,"eClass":"EGenericType"},{"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":"cdt","changeable":true,"resolveProxies":true,"lowerBound":0,"id":37,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"instrSi","changeable":true,"resolveProxies":true,"lowerBound":0,"id":38,"derived":false},{"id":39,"eClass":"EGenericType"},{"id":40,"eClass":"EGenericType"},{"id":41,"eClass":"EGenericType"},{"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":"EReference0","changeable":true,"resolveProxies":true,"lowerBound":0,"id":42,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"fonction","changeable":true,"resolveProxies":true,"lowerBound":0,"id":43,"derived":false},{"id":44,"eClass":"EGenericType"},{"id":45,"eClass":"EGenericType"},{"id":46,"eClass":"EGenericType"},{"id":47,"eClass":"EGenericType"},{"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":"EReference0","changeable":true,"resolveProxies":true,"lowerBound":0,"id":48,"derived":false},{"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":"LeftSon","changeable":true,"resolveProxies":true,"lowerBound":1,"id":49,"derived":false},{"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":"RightSon","changeable":true,"resolveProxies":true,"lowerBound":1,"id":50,"derived":false},{"id":51,"eClass":"EGenericType"},{"id":52,"eClass":"EGenericType"},{"id":53,"eClass":"EGenericType"},{"id":54,"eClass":"EGenericType"},{"id":55,"eClass":"EGenericType"},{"id":56,"eClass":"EGenericType"},{"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":"EReference2","changeable":true,"resolveProxies":true,"lowerBound":0,"id":57,"derived":false},{"id":58,"eClass":"EGenericType"},{"id":59,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"EReferenc0","changeable":true,"resolveProxies":true,"lowerBound":0,"id":60,"derived":false},{"id":61,"eClass":"EGenericType"}],"links":[{"source":0,"target":1},{"source":0,"target":2},{"source":1,"target":3},{"source":1,"target":4},{"source":1,"target":5},{"source":1,"target":6},{"source":1,"target":7},{"source":1,"target":8},{"source":1,"target":9},{"source":1,"target":10},{"source":1,"target":11},{"source":1,"target":0},{"source":3,"target":1},{"source":3,"target":12},{"source":12,"target":13},{"source":12,"target":14},{"source":12,"target":3},{"source":14,"target":13},{"source":4,"target":1},{"source":4,"target":3},{"source":4,"target":15},{"source":15,"target":3},{"source":5,"target":1},{"source":5,"target":3},{"source":5,"target":16},{"source":16,"target":3},{"source":6,"target":1},{"source":6,"target":3},{"source":6,"target":17},{"source":17,"target":3},{"source":7,"target":1},{"source":7,"target":3},{"source":7,"target":18},{"source":18,"target":3},{"source":8,"target":1},{"source":8,"target":3},{"source":8,"target":19},{"source":19,"target":3},{"source":9,"target":1},{"source":9,"target":3},{"source":9,"target":20},{"source":20,"target":3},{"source":10,"target":1},{"source":10,"target":3},{"source":10,"target":21},{"source":21,"target":3},{"source":11,"target":1},{"source":11,"target":3},{"source":11,"target":22},{"source":22,"target":3},{"source":2,"target":23},{"source":2,"target":24},{"source":2,"target":13},{"source":2,"target":25},{"source":2,"target":26},{"source":2,"target":27},{"source":2,"target":28},{"source":2,"target":29},{"source":2,"target":30},{"source":2,"target":31},{"source":2,"target":0},{"source":23,"target":2},{"source":23,"target":13},{"source":23,"target":32},{"source":23,"target":33},{"source":23,"target":34},{"source":32,"target":13},{"source":32,"target":35},{"source":32,"target":23},{"source":35,"target":13},{"source":33,"target":30},{"source":33,"target":36},{"source":33,"target":23},{"source":36,"target":30},{"source":34,"target":13},{"source":24,"target":2},{"source":24,"target":13},{"source":24,"target":37},{"source":24,"target":38},{"source":24,"target":39},{"source":37,"target":30},{"source":37,"target":40},{"source":37,"target":24},{"source":40,"target":30},{"source":38,"target":13},{"source":38,"target":41},{"source":38,"target":24},{"source":41,"target":13},{"source":39,"target":13},{"source":13,"target":2},{"source":13,"target":42},{"source":13,"target":43},{"source":42,"target":23},{"source":42,"target":44},{"source":42,"target":13},{"source":44,"target":23},{"source":43,"target":3},{"source":43,"target":45},{"source":43,"target":13},{"source":45,"target":3},{"source":25,"target":2},{"source":26,"target":2},{"source":26,"target":25},{"source":26,"target":30},{"source":26,"target":46},{"source":26,"target":47},{"source":46,"target":25},{"source":47,"target":30},{"source":27,"target":2},{"source":27,"target":25},{"source":27,"target":48},{"source":27,"target":49},{"source":27,"target":50},{"source":27,"target":51},{"source":48,"target":27},{"source":48,"target":52},{"source":48,"target":27},{"source":52,"target":27},{"source":49,"target":30},{"source":49,"target":53},{"source":49,"target":27},{"source":53,"target":30},{"source":50,"target":30},{"source":50,"target":54},{"source":50,"target":27},{"source":54,"target":30},{"source":51,"target":25},{"source":28,"target":2},{"source":28,"target":26},{"source":28,"target":55},{"source":55,"target":26},{"source":29,"target":2},{"source":29,"target":27},{"source":29,"target":56},{"source":56,"target":27},{"source":30,"target":2},{"source":30,"target":13},{"source":30,"target":57},{"source":30,"target":58},{"source":57,"target":23},{"source":57,"target":59},{"source":57,"target":30},{"source":59,"target":23},{"source":58,"target":13},{"source":31,"target":2},{"source":31,"target":60},{"source":60,"target":13},{"source":60,"target":61},{"source":60,"target":31},{"source":61,"target":13}],"multigraph":true}