diff --git a/src/main/jastadd/flatter/transforms/ServiceChannelTransforms.jadd b/src/main/jastadd/flatter/transforms/ServiceChannelTransforms.jadd
new file mode 100644
index 0000000000000000000000000000000000000000..4f99a82b294beacf659e49ecf0613a266c6b934b
--- /dev/null
+++ b/src/main/jastadd/flatter/transforms/ServiceChannelTransforms.jadd
@@ -0,0 +1,17 @@
+aspect ServiceChannelTransforms {
+
+    syn boolean DinerosTransition.canTransformServiceTransition() {
+        return this.getStaticTransitionInformation().isServiceTransitionInformation();
+    }
+
+    syn Page Page.transformServiceElement() {
+
+        Page res = new Page();
+
+
+
+
+        return res;
+    }
+
+}
\ No newline at end of file
diff --git a/src/main/jastadd/flatter/transforms/ServicePrototypeTransforms.jadd b/src/main/jastadd/flatter/transforms/ServicePrototypeTransforms.jadd
index 2f3b56249631772696386a35e66e5794dbb198e2..e9e0f4c5493a578915742835f7a039ca5f15843f 100644
--- a/src/main/jastadd/flatter/transforms/ServicePrototypeTransforms.jadd
+++ b/src/main/jastadd/flatter/transforms/ServicePrototypeTransforms.jadd
@@ -8,6 +8,7 @@ aspect ServicePrototypeTransforms {
             && (!getId().endsWith(PnmlConstants.PAGE_SERVER_INSTANCE_SUFFIX)));
     }
 
+    // apply rule S3
     syn Page Page.transformPrototypePage() {
 
         int serverCapacity = 0;
diff --git a/src/main/resources/templates/ServiceConnectionTemplate.pnml b/src/main/resources/templates/ServiceConnectionTemplate.pnml
index a798dcbbb98c6a22bdbd5b6b1946fbed59f3a3b4..4d8024eddf132b5df287291e29e4f314f051f31f 100644
--- a/src/main/resources/templates/ServiceConnectionTemplate.pnml
+++ b/src/main/resources/templates/ServiceConnectionTemplate.pnml
@@ -3,7 +3,7 @@
         <name>
             <text>DinerosTemplate</text>
         </name>
-        <page id="ServiceTemplatePage">
+        <page id="DinerosTemplatePage">
             <place id="ServiceTogglePlace">
                 <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
                     <location>none</location>
@@ -26,7 +26,7 @@
                 </graphics>
             </place>
 
-            <place id="ClientToServicePlace">
+            <place id="ServiceClientCallConnectPlace">
                 <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
                     <location>none</location>
                     <subnet>none</subnet>
@@ -35,7 +35,7 @@
                     </outputsignalbindings>
                 </toolspecific>
                 <name>
-                    <text>ClientToServicePlace</text>
+                    <text>ServiceClientCallConnectPlace</text>
                     <graphics>
                         <offset x="0" y="0" />
                     </graphics>
@@ -48,7 +48,7 @@
                 </graphics>
             </place>
 
-            <place id="InputToOutputServicePlace">
+            <place id="ServiceClientRespConnectPlace">
                 <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
                     <location>none</location>
                     <subnet>none</subnet>
@@ -57,7 +57,7 @@
                     </outputsignalbindings>
                 </toolspecific>
                 <name>
-                    <text>InputToOutputServicePlace</text>
+                    <text>ServiceClientRespConnectPlace</text>
                     <graphics>
                         <offset x="0" y="0" />
                     </graphics>
@@ -70,7 +70,7 @@
                 </graphics>
             </place>
 
-            <place id="ServiceOutputPlace">
+            <place id="ServiceClientCallPlace">
                 <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
                     <location>none</location>
                     <subnet>none</subnet>
@@ -79,7 +79,7 @@
                     </outputsignalbindings>
                 </toolspecific>
                 <name>
-                    <text>ServiceOutputPlace</text>
+                    <text>ServiceClientCallPlace</text>
                     <graphics>
                         <offset x="0" y="0" />
                     </graphics>
@@ -92,8 +92,7 @@
                 </graphics>
             </place>
 
-            <!-- new places after rework -->
-            <place id="ServiceToQueuePlace">
+            <place id="ServiceClientRespPlace">
                 <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
                     <location>none</location>
                     <subnet>none</subnet>
@@ -102,7 +101,7 @@
                     </outputsignalbindings>
                 </toolspecific>
                 <name>
-                    <text>ServiceToQueuePlace</text>
+                    <text>ServiceClientRespPlace</text>
                     <graphics>
                         <offset x="0" y="0" />
                     </graphics>
@@ -115,29 +114,7 @@
                 </graphics>
             </place>
 
-            <place id="ServiceQueueToServerPlace">
-                <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
-                    <location>none</location>
-                    <subnet>none</subnet>
-                    <type>discretePlaceType</type>
-                    <outputsignalbindings>
-                    </outputsignalbindings>
-                </toolspecific>
-                <name>
-                    <text>ServiceQueueToServerPlace</text>
-                    <graphics>
-                        <offset x="0" y="0" />
-                    </graphics>
-                </name>
-                <initialMarking>
-                    <text>0</text>
-                </initialMarking>
-                <graphics>
-                    <position x="0" y="0"/>
-                </graphics>
-            </place>
-
-            <transition id="ServiceClientInputTransition">
+            <transition id="ServiceClientCallConnectTransition">
                 <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
                     <location>none</location>
                     <subnet>none</subnet>
@@ -147,7 +124,7 @@
                     <inputsignalclause></inputsignalclause>
                 </toolspecific>
                 <name>
-                    <text>ServiceClientInputTransition</text>
+                    <text>ServiceClientCallConnectTransition</text>
                     <graphics>
                         <offset x="0" y="0" />
                     </graphics>
@@ -157,7 +134,7 @@
                 </graphics>
             </transition>
 
-            <transition id="ServiceServerInputTransition">
+            <transition id="ServiceClientRespConnectTransition">
                 <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
                     <location>none</location>
                     <subnet>none</subnet>
@@ -167,7 +144,7 @@
                     <inputsignalclause></inputsignalclause>
                 </toolspecific>
                 <name>
-                    <text>ServiceServerInputTransition</text>
+                    <text>ServiceClientRespConnectTransition</text>
                     <graphics>
                         <offset x="0" y="0" />
                     </graphics>
@@ -177,7 +154,7 @@
                 </graphics>
             </transition>
 
-            <transition id="ServiceServerOutputTransition">
+            <transition id="ServiceClientCallTransition">
                 <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
                     <location>none</location>
                     <subnet>none</subnet>
@@ -187,7 +164,7 @@
                     <inputsignalclause></inputsignalclause>
                 </toolspecific>
                 <name>
-                    <text>ServiceServerOutputTransition</text>
+                    <text>ServiceClientCallTransition</text>
                     <graphics>
                         <offset x="0" y="0" />
                     </graphics>
@@ -197,7 +174,7 @@
                 </graphics>
             </transition>
 
-            <transition id="ServiceClientOutputTransition">
+            <transition id="ServiceClientRespTransition">
                 <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
                     <location>none</location>
                     <subnet>none</subnet>
@@ -207,7 +184,7 @@
                     <inputsignalclause></inputsignalclause>
                 </toolspecific>
                 <name>
-                    <text>ServiceClientOutputTransition</text>
+                    <text>ServiceClientRespTransition</text>
                     <graphics>
                         <offset x="0" y="0" />
                     </graphics>
@@ -217,95 +194,59 @@
                 </graphics>
             </transition>
 
-            <transition id="ServiceClientConnectorTransition">
+            <!-- the reference target is just used here, because pnml does not allow dangling refs -->
+            <referencePlace id="ServiceCallRefPlace" ref="ServiceTogglePlace">
                 <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
                     <location>none</location>
                     <subnet>none</subnet>
-                    <type>discreteTransitionType</type>
-                    <inputsignalbindings>
-                    </inputsignalbindings>
-                    <inputsignalclause></inputsignalclause>
                 </toolspecific>
                 <name>
-                    <text>ServiceClientConnectorTransition</text>
+                    <text>ServiceCallRefPlace</text>
                     <graphics>
                         <offset x="0" y="0" />
                     </graphics>
                 </name>
                 <graphics>
-                    <position x="0" y="0"/>
+                    <position x="20" y="20"/>
                 </graphics>
-            </transition>
+            </referencePlace>
 
-            <!-- new transitions after rework -->
-            <transition id="ServiceQueueConnectorTransition">
+            <!-- the reference target is just used here, because pnml does not allow dangling refs -->
+            <referencePlace id="ServiceRespRefPlace" ref="ServiceTogglePlace">
                 <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
                     <location>none</location>
                     <subnet>none</subnet>
-                    <type>discreteTransitionType</type>
-                    <inputsignalbindings>
-                    </inputsignalbindings>
-                    <inputsignalclause></inputsignalclause>
-                </toolspecific>
-                <name>
-                    <text>ServiceQueueConnectorTransition</text>
-                    <graphics>
-                        <offset x="0" y="0" />
-                    </graphics>
-                </name>
-                <graphics>
-                    <position x="0" y="0"/>
-                </graphics>
-            </transition>
-
-            <transition id="ServiceQueueOverflowTransition">
-                <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
-                    <location>none</location>
-                    <subnet>none</subnet>
-                    <type>discreteTransitionType</type>
-                    <inputsignalbindings>
-                    </inputsignalbindings>
-                    <inputsignalclause></inputsignalclause>
                 </toolspecific>
                 <name>
-                    <text>ServiceQueueOverflowTransition</text>
+                    <text>ServiceRespRefPlace</text>
                     <graphics>
                         <offset x="0" y="0" />
                     </graphics>
                 </name>
                 <graphics>
-                    <position x="0" y="0"/>
+                    <position x="20" y="20"/>
                 </graphics>
-            </transition>
+            </referencePlace>
 
-            <arc id="arc-1" source="ServiceTogglePlace" target="ServiceClientInputTransition">
+            <arc id="arc-1" source="ServiceCallRefPlace" target="ServiceClientCallConnectTransition">
             </arc>
-            <arc id="arc-2" source="ServiceClientInputTransition" target="ClientToServicePlace">
+            <arc id="arc-2" source="ServiceTogglePlace" target="ServiceClientCallConnectTransition">
             </arc>
-            <!-- <arc id="arc-3" source="ClientToServicePlace" target="ServiceServerInputTransition">
-            </arc> -->
-            <arc id="arc-4" source="ServiceServerInputTransition" target="InputToOutputServicePlace">
+            <arc id="arc-3" source="ServiceClientCallConnectTransition" target="ServiceClientCallConnectPlace">
             </arc>
-            <arc id="arc-5" source="InputToOutputServicePlace" target="ServiceServerOutputTransition">
+            <arc id="arc-4" source="ServiceClientCallConnectPlace" target="ServiceClientCallTransition">
             </arc>
-            <arc id="arc-6" source="ServiceServerOutputTransition" target="ServiceOutputPlace">
+            <arc id="arc-5" source="ServiceClientCallTransition" target="ServiceClientCallPlace">
             </arc>
-            <arc id="arc-7" source="ServiceOutputPlace" target="ServiceClientOutputTransition">
+            <arc id="arc-6" source="ServiceClientRespConnectTransition" target="ServiceTogglePlace">
             </arc>
-            <arc id="arc-8" source="ServiceClientOutputTransition" target="ServiceTogglePlace">
+            <arc id="arc-7" source="ServiceClientRespConnectTransition" target="ServiceRespRefPlace">
             </arc>
-
-            <!-- new arcs after rework -->
-            <arc id="arc-9" source="ClientToServicePlace" target="ServiceClientConnectorTransition">
-            </arc>
-
-         <!--   <arc id="arc-10" source="ServiceQueueConnectorTransition" target="ServiceToQueuePlace">
-            </arc> -->
-            <arc id="arc-11" source="ServiceToQueuePlace" target="ServiceQueueConnectorTransition">
+            <arc id="arc-8" source="ServiceClientRespConnectPlace" target="ServiceClientRespConnectTransition">
             </arc>
-            <arc id="arc-12" source="ServiceToQueuePlace" target="ServiceQueueOverflowTransition">
+            <arc id="arc-9" source="ServiceClientRespTransition" target="ServiceClientRespConnectPlace">
             </arc>
-            <arc id="arc-13" source="ServiceQueueConnectorTransition" target="ServiceQueueToServerPlace">
+            <arc id="arc-10" source="ServiceClientRespPlace" target="ServiceClientRespTransition">
             </arc>
 
         </page>