diff --git a/build.gradle b/build.gradle
index 6e7f87d515e66ec4e97c392952518d784df80f0e..eedc254b7a20e75d695753815bc0d5fcb7707778 100644
--- a/build.gradle
+++ b/build.gradle
@@ -30,6 +30,11 @@ idea.module.generatedSourceDirs += file('src/gen/java')
 sourceSets.main.java.srcDir "src/gen/java"
 jar.manifest.attributes('Main-Class': 'de.tudresden.inf.st.pnml.Main')
 
+
+configurations {
+    myBeaver
+}
+
 dependencies {
     implementation group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: "${jackson_version}"
     implementation group: 'net.sf.beaver', name: 'beaver-rt', version: '0.9.11'
@@ -53,10 +58,13 @@ dependencies {
 
     compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.0'
 
+    myBeaver group: 'net.sf.beaver', name: 'beaver-ant', version: '0.9.11'
+
     jastadd2 "org.jastadd:jastadd:2.3.4"
 }
 
 // Default run configuration
+
 run {
     mainClassName = 'de.tudresden.inf.st.pnml.Main'
     standardInput = System.in
@@ -116,13 +124,41 @@ task relastToJastAdd(type: JavaExec) {
             "--file",
             relastFile,
             "./src/main/jastadd/marking/Marking.relast",
-            "./src/main/jastadd/io/IoPN.relast"
+            "./src/main/jastadd/io/IoPN.relast",
+            "./src/main/jastadd/clauses/expressions.relast"
+}
+
+task generateBeaver(type: JavaExec) {
+
+    inputs.files {
+        project.file("src/main/jastadd/clauses/Parser.beaver")
+    }
+    outputs.dir {
+        // This closure is needed to delay reading the genDir setting.
+        project.file("src/gen/java/de/tudresden/inf/st/pnml/jastadd/parser")
+    }
+
+    classpath = configurations.myBeaver
+    main = 'beaver.comp.run.Make'
+
+    doFirst {
+        def outdir = project.file("src/gen/java/de/tudresden/inf/st/pnml/jastadd/parser")
+        if (!outdir.isDirectory()) {
+            outdir.mkdirs()
+        }
+        def inputFile = project.file("src/main/jastadd/clauses/Parser.beaver")
+        args ([ '-d', outdir.path, '-t', '-c', '-w', inputFile.path ])
+    }
 }
 
 // Third phase: JastAdd -> Java (using JastAdd Gradle plugin)
 jastadd {
+
     configureModuleBuild()
     modules {
+
+
+
         module("pnml") {
 
             java {
@@ -143,6 +179,7 @@ jastadd {
 
             scanner {
                 include "src/main/jastadd/PnmlScanner.flex"
+                include "src/main/jastadd/clauses/expressions.flex"
             }
 
             parser {
@@ -174,6 +211,6 @@ jastadd {
 // Workflow configuration for phases
 relastToJastAdd.dependsOn ecoreToRelast
 generateAst.dependsOn relastToJastAdd
-
+compileJava.dependsOn generateBeaver
 //// always run jastadd
 //jastadd.outputs.upToDateWhen {false}
diff --git a/src/main/jastadd/clauses/Parser.beaver b/src/main/jastadd/clauses/Parser.beaver
new file mode 100644
index 0000000000000000000000000000000000000000..9505a3cc1db834710e67ca01573a0868db96cce5
--- /dev/null
+++ b/src/main/jastadd/clauses/Parser.beaver
@@ -0,0 +1,22 @@
+%header {:
+package de.tudresden.inf.st.pnml.jastadd.parser;
+ import de.tudresden.inf.st.pnml.jastadd.model.*; :};
+%terminals AND;
+%terminals OR;
+%terminals NOT;
+%terminals VARIABLE;
+%typeof goal = "expressions";
+%typeof exp = "Exp";
+%goal goal;
+goal =
+    exp.exp {: return new Symbol(new Root(exp)); :}
+  ;
+exp =
+    exp.a AND.AND exp.b {: return new Symbol(new AndExp(a, b)); :}
+
+  | exp.a OR.OR exp.b {: return new Symbol(new OrExp(a, b)); :}
+
+  | NOT.NOT exp.exp {: return new Symbol(new NotExp(exp)); :}
+
+  | VARIABLE.v {: return new Symbol(new Var(((String)v.value))); :}
+  ;
diff --git a/src/main/jastadd/clauses/expressions.flex b/src/main/jastadd/clauses/expressions.flex
new file mode 100644
index 0000000000000000000000000000000000000000..eb1089f5639d44fb28d4c28548531855dcbd4c37
--- /dev/null
+++ b/src/main/jastadd/clauses/expressions.flex
@@ -0,0 +1,39 @@
+package de.tudresden.inf.st.pnml.jastadd.scanner;
+
+import de.tudresden.inf.st.pnml.jastadd.parser.Parser.Terminals;
+
+%%
+
+%public
+%final
+%class ExpressionScanner
+%extends beaver.Scanner
+
+%type beaver.Symbol
+%function nextToken
+%yylexthrow beaver.Scanner.Exception
+
+%line
+%column
+
+%{
+  private beaver.Symbol sym(short id) {
+    return new beaver.Symbol(id, yyline + 1, yycolumn + 1, yylength(), yytext());
+  }
+%}
+
+WhiteSpace = [ ] | \t | \f
+NewLine    = \n | \r | \r\n
+Variable = [:jletter:][:jletterdigit:]*
+
+%%
+
+// discard whitespace information
+{WhiteSpace}  { }
+
+// token definitions
+"AND"           { return sym(Terminals.AND); }
+"OR"           { return sym(Terminals.OR); }
+"NOT"           { return sym(Terminals.NOT); }
+{Variable}      { return sym(Terminals.VARIABLE); }
+<<EOF>>       { return sym(Terminals.EOF); }
diff --git a/src/main/jastadd/clauses/expressions.jadd b/src/main/jastadd/clauses/expressions.jadd
new file mode 100644
index 0000000000000000000000000000000000000000..9ca151c061bda63de53da1749fc57ae36f52e50f
--- /dev/null
+++ b/src/main/jastadd/clauses/expressions.jadd
@@ -0,0 +1,26 @@
+import de.tudresden.inf.st.data.ClauseValuesDefinition;
+
+aspect SignalExpressions {
+
+    syn String ASTNode.printExp();
+    syn boolean Exp.eval(ClauseValuesDefinition defs);
+
+    eq ASTNode.printExp() = "";
+
+    eq Root.printExp() {
+        String result = "";
+        result += getExp().printExp();
+        return result;
+    }
+
+    eq AndExp.printExp() = getA().printExp() + " AND " + getB().printExp();
+    eq OrExp.printExp()  = getA().printExp() + " OR " + getB().printExp();
+    eq Var.printExp() = getName();
+    eq NotExp.printExp() = "NOT " + getExp().printExp();
+
+    eq AndExp.eval(ClauseValuesDefinition defs) = getA().eval(defs) && getB().eval(defs);
+    eq OrExp.eval(ClauseValuesDefinition defs)  = getA().eval(defs) || getB().eval(defs);
+    eq Var.eval(ClauseValuesDefinition defs) = defs.getDef(this.getName());
+    eq NotExp.eval(ClauseValuesDefinition defs) = !getExp().eval(defs);
+
+}
\ No newline at end of file
diff --git a/src/main/jastadd/clauses/expressions.relast b/src/main/jastadd/clauses/expressions.relast
new file mode 100644
index 0000000000000000000000000000000000000000..ade97b2562eb5c0f0e7d0b4880f07fca1ac7e53d
--- /dev/null
+++ b/src/main/jastadd/clauses/expressions.relast
@@ -0,0 +1,11 @@
+Root ::= Exp ;
+
+abstract Exp ;
+abstract UnaryExp:Exp ::= Exp ;
+
+abstract BinExp:Exp ::= A:Exp B:Exp ;
+AndExp:BinExp ;
+OrExp:BinExp ;
+
+Var:Exp ::= <Name:String> ;
+NotExp:UnaryExp ;
diff --git a/src/main/jastadd/distribution/DistributedPN.jadd b/src/main/jastadd/distribution/DistributedPN.jadd
index 1205d2aa1f22e24444e68ffd70d6ddfeeb93d1cb..a84f4b511ae6999712578bc99bde7198090fd5c8 100644
--- a/src/main/jastadd/distribution/DistributedPN.jadd
+++ b/src/main/jastadd/distribution/DistributedPN.jadd
@@ -35,4 +35,8 @@ aspect PnDistribution {
     syn lazy String RefTransition.getSubnet() {
         return de.tudresden.inf.st.pnml.ToolSpecificsParser.getSubnetFromToolSpecifics(this.getToolspecificList());
     }
+
+    syn lazy Root InputSignalTransition.getInputSignalClause(){
+        return de.tudresden.inf.st.pnml.ToolSpecificsParser.getClauseFromToolSpecifics(this.getToolspecificList());
+    }
 }
\ No newline at end of file
diff --git a/src/main/jastadd/io/IoPN.relast b/src/main/jastadd/io/IoPN.relast
index e16c996f0c36d188a1137f8fe46abc876e7696e0..60241c875f4e54b45d956c02c5bca6ba686daba0 100644
--- a/src/main/jastadd/io/IoPN.relast
+++ b/src/main/jastadd/io/IoPN.relast
@@ -8,11 +8,12 @@ DefaultTransitionInformation : TransitionInformation;
 
 PlaceInformation ::= <Location:String> <Type:String> <SubNet:String> <Instance:String>;
 
-InputSignalTransition : Transition ::= /StaticInputSignalBinding:InputSignalBinding*/ MutualInputSignalBinding:InputSignalBinding* /StaticTransitionInformation:TransitionInformation/ [MutualTransitionInformation:TransitionInformation];
+InputSignalTransition : Transition ::= /StaticInputSignalBinding:InputSignalBinding*/ MutualInputSignalBinding:InputSignalBinding* /StaticTransitionInformation:TransitionInformation/ [MutualTransitionInformation:TransitionInformation] /InputSignalClause:Root/;
 OutputSignalPlace : Place ::= /OutputSignalBinding*/ /StaticPlaceInformation:PlaceInformation/ [MutualPlaceInformation:PlaceInformation];
 
 OutputMapping;
 
 EqualityOutputMapping : OutputMapping ::= <Value:java.lang.Integer> <Result:java.lang.Integer>;
 ThresholdOutputMapping : OutputMapping ::= <Value:java.lang.Integer> <Result:java.lang.Integer>;
-RangeOutputMapping : OutputMapping ::= <UpperBound:java.lang.Integer> <LowerBound:java.lang.Integer> <Result:java.lang.Integer>;
\ No newline at end of file
+RangeOutputMapping : OutputMapping ::= <UpperBound:java.lang.Integer> <LowerBound:java.lang.Integer> <Result:java.lang.Integer>;
+
diff --git a/src/main/java/de/tudresden/inf/st/constants/PnmlConstants.java b/src/main/java/de/tudresden/inf/st/constants/PnmlConstants.java
index dcbf9ad432bf9718bec01a91610a36a55efb4510..70335cf8da9ff4fd954f0092caf26a0b60939409 100644
--- a/src/main/java/de/tudresden/inf/st/constants/PnmlConstants.java
+++ b/src/main/java/de/tudresden/inf/st/constants/PnmlConstants.java
@@ -64,4 +64,6 @@ public final class PnmlConstants {
     public static final String RESULT_KEY = "result";
     public static final String UPPER_BOUND_KEY = "upperbound";
     public static final String LOWER_BOUND_KEY = "lowerbound";
+
+    public static final String CLAUSE_KEY = "inputsignalclause";
 }
diff --git a/src/main/java/de/tudresden/inf/st/data/ClauseValuesDefinition.java b/src/main/java/de/tudresden/inf/st/data/ClauseValuesDefinition.java
new file mode 100644
index 0000000000000000000000000000000000000000..af3559e08f5dc4748f4f74c949ec6220c0e440df
--- /dev/null
+++ b/src/main/java/de/tudresden/inf/st/data/ClauseValuesDefinition.java
@@ -0,0 +1,24 @@
+package de.tudresden.inf.st.data;
+
+import java.util.HashMap;
+
+public class ClauseValuesDefinition {
+
+    private HashMap<String, Boolean> defs;
+
+    public ClauseValuesDefinition(){
+        defs = new HashMap<String, Boolean>();
+    }
+
+    public HashMap<String, Boolean> getDefs() {
+        return defs;
+    }
+
+    public Boolean getDef(String id) {
+        return defs.get(id);
+    }
+
+    public void addDef(String id, Boolean def) {
+        defs.put(id, def);
+    }
+}
diff --git a/src/main/java/de/tudresden/inf/st/pnml/Main.java b/src/main/java/de/tudresden/inf/st/pnml/Main.java
index f47221e64f5926296229b02a31b881ab35d91265..c159d5637a88f50eeec52827ec87d272334d80a7 100644
--- a/src/main/java/de/tudresden/inf/st/pnml/Main.java
+++ b/src/main/java/de/tudresden/inf/st/pnml/Main.java
@@ -19,13 +19,13 @@ public class Main {
 
         String inputPath = (args.length > 0) ? args[0] : null;
 
-        if(inputPath == null){
-            logger.error("No model found on given input path.");
-            return;
-        }
+     //   if(inputPath == null){
+   //         logger.error("No model found on given input path.");
+    //        return;
+    //    }
 
-        //List<PetriNet> petriNets = PnmlParser.parsePnml("src/main/nets/refNet2.pnml");
-        List<PetriNet> petriNets = PnmlParser.parsePnml(inputPath);
+        List<PetriNet> petriNets = PnmlParser.parsePnml("src/main/nets/inputSignalNet.pnml");
+      //  List<PetriNet> petriNets = PnmlParser.parsePnml(inputPath);
 
         List<List<PetriNet>> disconnectedPetriNets = new ArrayList<>();
        // petriNets.forEach(pn -> disconnectedPetriNets.add(GlobalToLocalNetsPostProcessor.disconnectNets(pn)));
diff --git a/src/main/java/de/tudresden/inf/st/pnml/ToolSpecificsParser.java b/src/main/java/de/tudresden/inf/st/pnml/ToolSpecificsParser.java
index d757b1c916d28f0d091371b1d48ef8313739180f..89b0baac328c0c9d3eb61c55fa46bf517e44267f 100644
--- a/src/main/java/de/tudresden/inf/st/pnml/ToolSpecificsParser.java
+++ b/src/main/java/de/tudresden/inf/st/pnml/ToolSpecificsParser.java
@@ -1,5 +1,6 @@
 package de.tudresden.inf.st.pnml;
 
+import beaver.Symbol;
 import de.tudresden.inf.st.constants.PnmlConstants;
 import de.tudresden.inf.st.pnml.jastadd.model.*;
 
@@ -16,11 +17,38 @@ import org.xml.sax.SAXException;
 import java.io.ByteArrayInputStream;
 import java.io.IOException;
 import java.io.InputStream;
+import java.io.StringReader;
+
+import de.tudresden.inf.st.pnml.jastadd.scanner.ExpressionScanner;
+import de.tudresden.inf.st.pnml.jastadd.parser.Parser;
 
 public class ToolSpecificsParser {
 
     private static final Logger logger = LoggerFactory.getLogger(ToolSpecificsParser.class);
 
+    public static Root getClauseFromToolSpecifics(JastAddList<ToolInfo> toolInfos) {
+
+        if (toolInfos.getNumChild() > 0) {
+            try {
+                Document doc = parseToolSpecifics(toolInfos);
+                NodeList locationList = doc.getElementsByTagName(PnmlConstants.CLAUSE_KEY);
+
+                if (locationList.getLength() > 0 && locationList.item(0) != null) {
+                    String content = locationList.item(0).getTextContent();
+                    StringReader reader = new StringReader(content);
+                    ExpressionScanner scanner = new ExpressionScanner(reader);
+                    Parser parser = new Parser();
+                    return ((Root) parser.parse(scanner));
+                }
+
+            } catch (ParserConfigurationException | SAXException | IOException | beaver.Parser.Exception e) {
+                logger.error(e.getMessage());
+            }
+        }
+
+        return new Root();
+    }
+
     public static String getLocationFromToolSpecifics(JastAddList<ToolInfo> toolInfos) {
 
         if (toolInfos.getNumChild() > 0) {
diff --git a/src/main/java/de/tudresden/inf/st/postprocessing/PostProcessingUtils.java b/src/main/java/de/tudresden/inf/st/postprocessing/PostProcessingUtils.java
index 016a642aff7558a69b9951c69b49d151a0bbaecb..9b86ebeb8856664cc77efc72e34fc78ad38873bb 100644
--- a/src/main/java/de/tudresden/inf/st/postprocessing/PostProcessingUtils.java
+++ b/src/main/java/de/tudresden/inf/st/postprocessing/PostProcessingUtils.java
@@ -2,6 +2,7 @@ package de.tudresden.inf.st.postprocessing;
 
 import de.tudresden.inf.st.constants.PnmlConstants;
 import de.tudresden.inf.st.copy.CopyPrimitiveElements;
+import de.tudresden.inf.st.data.ClauseValuesDefinition;
 import de.tudresden.inf.st.data.Tuple3;
 import de.tudresden.inf.st.pnml.jastadd.model.*;
 import org.slf4j.Logger;
@@ -222,6 +223,10 @@ public class PostProcessingUtils {
                 logger.info("--- Transition: " + t.getId());
             }
 
+            if(t.asInputSignalTransition().getInputSignalClause() != null && t.asInputSignalTransition().getInputSignalClause().getNumChild() > 0){
+                logger.info("------ Clause: " + t.asInputSignalTransition().getInputSignalClause().printExp());
+            }
+
             for (Place p : t.asInputSignalTransition().incomingPlaces()) {
 
                 logger.info("------ Inputplace:  " + p.getName().getText() + " subnet: " + p.asOutputSignalPlace().getStaticPlaceInformation().getSubNet() + " ---------");
diff --git a/src/main/nets/inputSignalNet.pnml b/src/main/nets/inputSignalNet.pnml
new file mode 100644
index 0000000000000000000000000000000000000000..63f1f2df5e630bf7f0dec6a8c621b7a6b730f10d
--- /dev/null
+++ b/src/main/nets/inputSignalNet.pnml
@@ -0,0 +1,94 @@
+<pnml xmlns="http://www.pnml.org/version-2009/grammar/pnml">
+    <net id="n-E2D0-BCF46-0" type="http://www.pnml.org/version-2009/grammar/ptnet">
+        <name>
+            <text>minimal</text>
+        </name>
+        <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
+        </toolspecific>
+        <page id="g-E2D0-BCF68-1">
+            <place id="p1">
+                <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
+                    <location>node-1</location>
+                    <subnet>subnet-1</subnet>
+                    <type>discretePlaceType</type>
+                    <outputsignalbindings>
+                        <outputsignalbinding>
+                            <placeID>p1</placeID>
+                            <outputsignalID>os2</outputsignalID>
+                            <initialvalue>1</initialvalue> <!-- -1 = undefined -->
+                            <outputmappings>
+                                <equal>
+                                    <value>1</value>
+                                    <result>3</result>
+                                </equal>
+                                <equal>
+                                    <value>0</value>
+                                    <result>2</result>
+                                </equal>
+                                <threshold>
+                                    <value>6</value>
+                                    <result>0</result>
+                                </threshold>
+                                <range>
+                                    <upperbound>5</upperbound>
+                                    <lowerbound>3</lowerbound>
+                                    <result>1</result>
+                                </range>
+                            </outputmappings>
+                        </outputsignalbinding>
+                    </outputsignalbindings>
+                </toolspecific>
+                <name>
+                    <text>p1</text>
+                    <graphics>
+                        <offset x="0" y="-10"/>
+                    </graphics>
+                </name>
+                <initialMarking>
+                    <text>1</text>
+                </initialMarking>
+                <graphics>
+                    <position x="30" y="50"/>
+                </graphics>
+            </place>
+
+            <transition id="t1">
+                <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
+                  <!--  <location>channel</location>
+                    <subnet>channel</subnet>-->
+                    <location>node-1</location>
+                    <subnet>subnet-1</subnet>
+                    <type>discreteTransitionType</type>
+                    <!--   <topic>sampleTopic</topic>
+               <inputlimit>10</inputlimit>
+                   <outputlimit>10</outputlimit>-->
+                    <inputsignalbindings>
+                        <inputsignalbinding>
+                            <transitionID>t1</transitionID>
+                            <inputsignalID>is1</inputsignalID>
+                            <initialvalue>1</initialvalue>
+                        </inputsignalbinding>
+                        <inputsignalbinding>
+                            <transitionID>t1</transitionID>
+                            <inputsignalID>is2</inputsignalID>
+                            <initialvalue>1</initialvalue>
+                        </inputsignalbinding>
+                    </inputsignalbindings>
+                    <inputsignalclause>is1 AND NOT is2</inputsignalclause>
+                </toolspecific>
+                <name>
+                    <text>t1</text>
+                    <graphics>
+                        <offset x="0" y="0"/>
+                    </graphics>
+                </name>
+                <graphics>
+                    <position x="300" y="50"/>
+                </graphics>
+            </transition>
+
+            <arc id="arc-p1-t1" source="p1" target="t1">
+            </arc>
+        </page>
+    </net>
+</pnml>
\ No newline at end of file
diff --git a/src/main/nets/minimal.pnml b/src/main/nets/minimal.pnml
new file mode 100644
index 0000000000000000000000000000000000000000..f3907302420e8988aaf08b5b4ab29c25c502fe67
--- /dev/null
+++ b/src/main/nets/minimal.pnml
@@ -0,0 +1,243 @@
+<pnml xmlns="http://www.pnml.org/version-2009/grammar/pnml">
+    <net id="n-E2D0-BCF46-0" type ="http://www.pnml.org/version-2009/grammar/ptnet">
+        <name>
+            <text>minimal</text>
+        </name>
+        <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+        </toolspecific>
+        <page id="g-E2D0-BCF68-1">
+            <place id="p1">
+                <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+                    <location>node-1</location>
+                    <type>discretePlaceType</type>
+                    <outputsignalbindings>
+                        <outputsignalbinding>
+                            <placeID>p1</placeID>
+                            <outputsignalID>os2</outputsignalID>
+                            <initialvalue>1</initialvalue> <!-- -1 = undefined -->
+                            <outputmappings>
+                                <equal>
+                                    <value>1</value>
+                                    <result>3</result>
+                                </equal>
+                                <equal>
+                                    <value>0</value>
+                                    <result>2</result>
+                                </equal>
+                                <threshold>
+                                    <value>6</value>
+                                    <result>0</result>
+                                </threshold>
+                                <range>
+                                    <upperbound>5</upperbound>
+                                    <lowerbound>3</lowerbound>
+                                    <result>1</result>
+                                </range>
+                            </outputmappings>
+                        </outputsignalbinding>
+                    </outputsignalbindings>
+                </toolspecific>
+                <name>
+                    <text>p1</text>
+                    <graphics>
+                        <offset x="0" y="-10" />
+                    </graphics>
+                </name>
+                <initialMarking>
+                    <text>1</text>
+                </initialMarking>
+                <graphics>
+                    <position x="30" y="50"/>
+                </graphics>
+            </place>
+            <place id="p2">
+                <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+                    <location>node-1</location>
+                    <type>discretePlaceType</type>
+                    <outputsignalbindings>
+                        <outputsignalbinding>
+                            <placeID>p2</placeID>
+                            <outputsignalID>os1</outputsignalID>
+                            <initialvalue>4</initialvalue> <!-- -1 = undefined -->
+                            <outputmappings>
+                                <equal>
+                                    <value>1</value>
+                                    <result>1</result>
+                                </equal>
+                                <threshold>
+                                    <value>6</value>
+                                    <result>0</result>
+                                </threshold>
+                                <range>
+                                    <upperbound>5</upperbound>
+                                    <lowerbound>3</lowerbound>
+                                    <result>1</result>
+                                </range>
+                            </outputmappings>
+                        </outputsignalbinding>
+                    </outputsignalbindings>
+                </toolspecific>
+                <name>
+                    <text>p1</text>
+                    <graphics>
+                        <offset x="0" y="-10" />
+                    </graphics>
+                </name>
+                <initialMarking>
+                    <text>1</text>
+                </initialMarking>
+                <graphics>
+                    <position x="635" y="90"/>
+                </graphics>
+            </place>
+            <place id="p3">
+                <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+                    <location>node-1</location>
+                    <type>discretePlaceType</type>
+                    <outputsignalbindings>
+                        <outputsignalbinding>
+                            <placeID>p3</placeID>
+                            <outputsignalID>os5</outputsignalID>
+                            <initialvalue>4</initialvalue> <!-- -1 = undefined -->
+                            <outputmappings>
+                                <equal>
+                                    <value>1</value>
+                                    <result>1</result>
+                                </equal>
+                                <threshold>
+                                    <value>2</value>
+                                    <result>0</result>
+                                </threshold>
+                            </outputmappings>
+                        </outputsignalbinding>
+                    </outputsignalbindings>
+                </toolspecific>
+                <name>
+                    <text>p3</text>
+                    <graphics>
+                        <offset x="0" y="-10" />
+                    </graphics>
+                </name>
+                <initialMarking>
+                    <text>1</text>
+                </initialMarking>
+                <graphics>
+                    <position x="635" y="90"/>
+                </graphics>
+            </place>
+            <transition id="t1">
+                <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+                    <location>node-1</location>
+                    <type>discreteTransitionType</type>
+                    <inputsignalbindings>
+                        <inputsignalbinding>
+                            <transitionID>t1</transitionID>
+                            <inputsignalID>is1</inputsignalID>
+                            <initialvalue>1</initialvalue>
+                        </inputsignalbinding>
+                        <inputsignalbinding>
+                            <transitionID>t1</transitionID>
+                            <inputsignalID>is3</inputsignalID>
+                            <initialvalue>1</initialvalue>
+                        </inputsignalbinding>
+                    </inputsignalbindings>
+                </toolspecific>
+                <name>
+                    <text>t0</text>
+                    <graphics>
+                        <offset x="0" y="0" />
+                    </graphics>
+                </name>
+                <graphics>
+                    <position x="300" y="50"/>
+                </graphics>
+            </transition>
+            <transition id="t2">
+                <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+                    <location>node-1</location>
+                    <type>discreteTransitionType</type>
+                    <inputsignalbindings>
+                        <inputsignalbinding>
+                            <transitionID>t2</transitionID>
+                            <inputsignalID>is2</inputsignalID>
+                            <initialvalue>0</initialvalue>
+                        </inputsignalbinding>
+                        <inputsignalbinding>
+                            <transitionID>t2</transitionID>
+                            <inputsignalID>is5</inputsignalID>
+                            <initialvalue>0</initialvalue>
+                        </inputsignalbinding>
+                    </inputsignalbindings>
+                    <inputsignalclause>is2 AND NOT is5</inputsignalclause>
+                </toolspecific>
+                <name>
+                    <text>t1</text>
+                    <graphics>
+                        <offset x="0" y="0" />
+                    </graphics>
+                </name>
+                <graphics>
+                    <position x="285" y="205"/>
+                </graphics>
+            </transition>
+            <transition id="t3">
+                <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+                    <location>node-1</location>
+                    <type>unlimitedChannelOutType</type>
+                    <topic>c1</topic>
+                    <inputsignalbindings>
+                        <inputsignalbinding>
+                            <transitionID>t3</transitionID>
+                            <inputsignalID>is3</inputsignalID>
+                            <initialvalue>1</initialvalue>
+                        </inputsignalbinding>
+                    </inputsignalbindings>
+                </toolspecific>
+                <name>
+                    <text>t3</text>
+                    <graphics>
+                        <offset x="0" y="0" />
+                    </graphics>
+                </name>
+                <graphics>
+                    <position x="265" y="205"/>
+                </graphics>
+            </transition>
+            <transition id="t4">
+                <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+                    <location>node-1</location>
+                    <type>unlimitedChannelInType</type>
+                    <topic>c1</topic>
+                    <inputsignalbindings>
+                        <inputsignalbinding>
+                            <transitionID>t4</transitionID>
+                            <inputsignalID>is4</inputsignalID>
+                            <initialvalue>1</initialvalue>
+                        </inputsignalbinding>
+                    </inputsignalbindings>
+                </toolspecific>
+                <name>
+                    <text>t4</text>
+                    <graphics>
+                        <offset x="0" y="0" />
+                    </graphics>
+                </name>
+                <graphics>
+                    <position x="205" y="205"/>
+                </graphics>
+            </transition>
+            <arc id="arc-t2-p1" source="t2" target="p1">
+            </arc>
+            <arc id="arc-p2-t2" source="p2" target="t2">
+            </arc>
+            <arc id="arc-t1-p2" source="t1" target="p2">
+            </arc>
+            <arc id="arc-p1-t1" source="p1" target="t1">
+            </arc>
+            <arc id="arc-p1-t3" source="p1" target="t3">
+            </arc>
+            <arc id="arc-t4-p3" source="t4" target="p3">
+            </arc>
+        </page>
+    </net>
+</pnml>