diff --git a/statemachine.solution/build.gradle b/statemachine.solution/build.gradle
index 2ccafb7578f9a9b0cfb5c8479285988f3b5f56d0..c3cd01ee142c60cbdb00f3729ac19b3149638097 100644
--- a/statemachine.solution/build.gradle
+++ b/statemachine.solution/build.gradle
@@ -42,8 +42,8 @@ run {
 }
 
 // Generated files
-def ecoreFile = "./src/main/resources/Example.relast"
-def relastFile = "./src/gen/jastadd/Example.relast"
+def ecoreFile = "./src/main/resources/StateMachine.relast"
+def relastFile = "./src/gen/jastadd/StateMachine.relast"
 
 // First phase: Ecore -> RelAst
 task ecoreToRelast(type: JavaExec) {
@@ -58,7 +58,7 @@ task ecoreToRelast(type: JavaExec) {
 
     //args "../libs/ecore2relast-0.1.jar", ecoreFile, relastFile
     args "../libs/RoleRag-0.2.0.jar", "--inputBaseDir=src/main/resources",
-            "--outputBaseDir=src/gen/jastadd", "Example.relast"
+            "--outputBaseDir=src/gen/jastadd", "StateMachine.relast"
 
     inputs.files file(ecoreFile)
     outputs.files file(relastFile)
diff --git a/statemachine.solution/src/main/resources/StateMachine.relast b/statemachine.solution/src/main/resources/StateMachine.relast
new file mode 100644
index 0000000000000000000000000000000000000000..41f688a9b1d75f13fdad593bf7e606a50c6f3d5f
--- /dev/null
+++ b/statemachine.solution/src/main/resources/StateMachine.relast
@@ -0,0 +1,9 @@
+StateMachine ::= Element*;
+abstract Element ::= <Label:String>;
+State : Element ::=;
+Transition : Element ::=;
+
+rel StateMachine.initial -> State;
+rel StateMachine.final* -> State;
+rel State.outgoing* <-> Transition.from;
+rel State.incoming* <-> Transition.to;