Index: /trunk/autoquest-plugin-http-test/src/test/java/de/ugoe/cs/autoquest/http/SOAPUtilsTest.java
===================================================================
--- /trunk/autoquest-plugin-http-test/src/test/java/de/ugoe/cs/autoquest/http/SOAPUtilsTest.java	(revision 1987)
+++ /trunk/autoquest-plugin-http-test/src/test/java/de/ugoe/cs/autoquest/http/SOAPUtilsTest.java	(revision 1988)
@@ -46,34 +46,38 @@
         parser.parseFile(new File(ClassLoader.getSystemResource("testParseFile_3_logfile.log")
             .getFile()));
-        Collection<List<Event>> events = parser.getSequences();
+        Collection<List<Event>> sequences = parser.getSequences();
 
-        assertNotNull(events);
-        assertEquals(1, events.size());
+        assertNotNull(sequences);
+        assertFalse(sequences.isEmpty());
 
-        List<Event> sequence = events.iterator().next();
+        Collection<List<Event>> newSequences = SOAPUtils.convertToSimpleSOAPEvent(sequences, false);
+        
+        assertNotNull(newSequences);
+        assertEquals(sequences.size(), newSequences.size());
 
-        List<Event> newSequence = SOAPUtils.convertToSimpleSOAPEvent(sequence, false);
-
-        assertNotNull(newSequence);
-        assertEquals(sequence.size(), newSequence.size());
-
-        Iterator<Event> oldSeqIter = sequence.iterator();
-        Iterator<Event> newSeqIter = newSequence.iterator();
-
-        while (oldSeqIter.hasNext()) {
-            Event oldEvent = oldSeqIter.next();
-            Event newEvent = newSeqIter.next();
-
-            if (oldEvent.getType() instanceof SOAPEventType) {
-                assertTrue(newEvent.getType() instanceof SimpleSOAPEventType);
-                SOAPEventType oldEventType = (SOAPEventType) oldEvent.getType();
-                SimpleSOAPEventType newEventType = (SimpleSOAPEventType) newEvent.getType();
-                assertEquals(oldEventType.getCalledMethod(), newEventType.getCalledMethod());
-                assertEquals(oldEventType.getServiceName(), newEventType.getServiceName());
-                assertEquals(oldEventType.getClientName(), newEventType.getClientName());
-                assertNull(newEvent.getTarget());
-            }
-            else {
-                assertSame(oldEvent, newEvent);
+        // compare sequences
+        Iterator<List<Event>> oldIter = sequences.iterator();
+        Iterator<List<Event>> newIter = newSequences.iterator();
+        
+        while( oldIter.hasNext() ) {
+            Iterator<Event> oldSeqIter = oldIter.next().iterator();
+            Iterator<Event> newSeqIter = newIter.next().iterator();
+    
+            while (oldSeqIter.hasNext()) {
+                Event oldEvent = oldSeqIter.next();
+                Event newEvent = newSeqIter.next();
+    
+                if (oldEvent.getType() instanceof SOAPEventType) {
+                    assertTrue(newEvent.getType() instanceof SimpleSOAPEventType);
+                    SOAPEventType oldEventType = (SOAPEventType) oldEvent.getType();
+                    SimpleSOAPEventType newEventType = (SimpleSOAPEventType) newEvent.getType();
+                    assertEquals(oldEventType.getCalledMethod(), newEventType.getCalledMethod());
+                    assertEquals(oldEventType.getServiceName(), newEventType.getServiceName());
+                    assertEquals(oldEventType.getClientName(), newEventType.getClientName());
+                    assertNull(newEvent.getTarget());
+                }
+                else {
+                    assertSame(oldEvent, newEvent);
+                }
             }
         }
Index: unk/autoquest-plugin-http-test/src/test/java/de/ugoe/cs/autoquest/http/eventcore/EqualSOAPDataMapTest.java
===================================================================
--- /trunk/autoquest-plugin-http-test/src/test/java/de/ugoe/cs/autoquest/http/eventcore/EqualSOAPDataMapTest.java	(revision 1987)
+++ 	(revision )
@@ -1,89 +1,0 @@
-//   Copyright 2012 Georg-August-Universität Göttingen, Germany
-//
-//   Licensed under the Apache License, Version 2.0 (the "License");
-//   you may not use this file except in compliance with the License.
-//   You may obtain a copy of the License at
-//
-//       http://www.apache.org/licenses/LICENSE-2.0
-//
-//   Unless required by applicable law or agreed to in writing, software
-//   distributed under the License is distributed on an "AS IS" BASIS,
-//   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//   See the License for the specific language governing permissions and
-//   limitations under the License.
-
-package de.ugoe.cs.autoquest.http.eventcore;
-
-import static org.junit.Assert.*;
-
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.InputStream;
-import java.io.ObjectInputStream;
-import java.io.ObjectOutputStream;
-import java.lang.reflect.Field;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.commons.collections4.set.ListOrderedSet;
-import org.junit.Test;
-
-import de.ugoe.cs.autoquest.eventcore.Event;
-import de.ugoe.cs.autoquest.plugin.http.HTTPLogParser;
-import de.ugoe.cs.autoquest.plugin.http.SOAPUtils;
-import de.ugoe.cs.autoquest.plugin.http.eventcore.EqualSOAPDataMap;
-import de.ugoe.cs.autoquest.plugin.http.eventcore.SimpleSOAPEventType;
-
-/**
- * @author Steffen Herbold
- */
-public class EqualSOAPDataMapTest {
-
-    /**
-     * 
-     */
-    @SuppressWarnings("unchecked")
-    @Test
-    public void testSerialization_1() throws Exception {
-        HTTPLogParser parser =
-            new HTTPLogParser(new File(ClassLoader
-                .getSystemResource("testParseFile_3_properties.txt").getFile()));
-        parser.parseFile(new File(ClassLoader.getSystemResource("testParseFile_3_logfile.log")
-            .getFile()));
-        for (List<Event> sequence : parser.getSequences()) {
-            SOAPUtils.convertToSimpleSOAPEvent(sequence, true);
-        }
-
-        Field privateStringField = EqualSOAPDataMap.class.getDeclaredField("soapRequestBodies");
-
-        privateStringField.setAccessible(true);
-
-        Map<SimpleSOAPEventType, ListOrderedSet<String>> internalMapExpected =
-            (Map<SimpleSOAPEventType, ListOrderedSet<String>>) privateStringField
-                .get(EqualSOAPDataMap.getInstance());
-
-        // serialize
-        ByteArrayOutputStream out = new ByteArrayOutputStream();
-        ObjectOutputStream oos = new ObjectOutputStream(out);
-        oos.writeObject(EqualSOAPDataMap.getInstance());
-        oos.close();
-
-        EqualSOAPDataMap.getInstance().reset();
-
-        // deserialize
-        byte[] pickled = out.toByteArray();
-        InputStream in = new ByteArrayInputStream(pickled);
-        ObjectInputStream ois = new ObjectInputStream(in);
-        ois.readObject();
-        ois.close();
-
-        Map<SimpleSOAPEventType, ListOrderedSet<String>> internalMapResult =
-            (Map<SimpleSOAPEventType, ListOrderedSet<String>>) privateStringField
-                .get(EqualSOAPDataMap.getInstance());
-
-        assertNotSame(internalMapExpected, internalMapResult);
-        assertEquals(internalMapExpected, internalMapResult);
-    }
-
-}
Index: /trunk/autoquest-plugin-http/src/main/java/de/ugoe/cs/autoquest/plugin/http/SOAPUtils.java
===================================================================
--- /trunk/autoquest-plugin-http/src/main/java/de/ugoe/cs/autoquest/plugin/http/SOAPUtils.java	(revision 1987)
+++ /trunk/autoquest-plugin-http/src/main/java/de/ugoe/cs/autoquest/plugin/http/SOAPUtils.java	(revision 1988)
@@ -17,4 +17,5 @@
 import java.io.StringWriter;
 import java.util.ArrayList;
+import java.util.Collection;
 import java.util.Iterator;
 import java.util.LinkedList;
@@ -34,4 +35,5 @@
 
 import de.ugoe.cs.autoquest.eventcore.Event;
+import de.ugoe.cs.autoquest.plugin.http.eventcore.EqualSOAPDataMap;
 import de.ugoe.cs.autoquest.plugin.http.eventcore.SOAPEventType;
 import de.ugoe.cs.autoquest.plugin.http.eventcore.SimpleSOAPEventType;
@@ -53,36 +55,42 @@
      * </p>
      * 
-     * @param sequence
-     *            sequence where the events are replaced
+     * @param sequences
+     *            sequences where the events are replaced
      * @param keepOnlySOAPEvents
      *            if true, all events that are not of SOAPEventType or SimpleSOAPEventType are
      *            removed
-     * @return sequence with {@link SimpleSOAPEventType}s instead of {@link SOAPEventType}s
-     */
-    public static List<Event> convertToSimpleSOAPEvent(List<Event> sequence,
+     * @return sequences with {@link SimpleSOAPEventType}s instead of {@link SOAPEventType}s
+     */
+    public static Collection<List<Event>> convertToSimpleSOAPEvent(Collection<List<Event>> sequences,
                                                        boolean keepOnlySOAPEvents)
     {
-        List<Event> newSequence = null;
-        if (sequence != null) {
-            newSequence = new LinkedList<>();
-            for (Event event : sequence) {
-                if (event.getType() instanceof SOAPEventType) {
-                    SOAPEventType eventType = (SOAPEventType) event.getType();
-                    newSequence.add(new Event(new SimpleSOAPEventType(eventType.getCalledMethod(),
-                                                                      eventType.getServiceName(),
-                                                                      eventType.getClientName(),
-                                                                      eventType
-                                                                          .getSoapRequestBody())));
-                }
-                else {
-                    if (!keepOnlySOAPEvents || event.getType() instanceof SimpleSOAPEventType) {
-                        newSequence.add(event);
+        Collection<List<Event>> newSequences = new LinkedList<>();
+        EqualSOAPDataMap equalSOAPDataMap = new EqualSOAPDataMap();
+        for( List<Event> sequence : sequences ) {
+            List<Event> newSequence = null;
+            if (sequence != null) {
+                newSequence = new LinkedList<>();
+                for (Event event : sequence) {
+                    if (event.getType() instanceof SOAPEventType) {
+                        SOAPEventType eventType = (SOAPEventType) event.getType();
+                        newSequence.add(new Event(new SimpleSOAPEventType(eventType.getCalledMethod(),
+                                                                          eventType.getServiceName(),
+                                                                          eventType.getClientName(),
+                                                                          eventType
+                                                                              .getSoapRequestBody(),
+                                                                          equalSOAPDataMap)));
+                    }
+                    else {
+                        if (!keepOnlySOAPEvents || event.getType() instanceof SimpleSOAPEventType) {
+                            newSequence.add(event);
+                        }
                     }
                 }
             }
-        }
-        return newSequence;
-    }
-
+            newSequences.add(newSequence);
+        }
+        return newSequences;
+    }
+    
     /**
      * <p>
@@ -182,4 +190,19 @@
      */
     public static Element getSoapRequestBodyFromEvent(Event event) {
+        return getSoapRequestBodyFromEvent(event, false);
+    }
+    
+    /**
+     * <p>
+     * Helper function to get the body of a SOAP request.
+     * </p>
+     * 
+     * @param event
+     *            event for which the SOAP request body is retrieved
+     * @param useRandomRequestBodies
+     *            defines is random request bodies are used or the body of the associated event
+     * @return body of the SOAP event
+     */
+    public static Element getSoapRequestBodyFromEvent(Event event, boolean useRandomRequestBodies) {
         Element requestBody = null;
         if (event.getType() instanceof SOAPEventType) {
@@ -187,5 +210,9 @@
         }
         else if (event.getType() instanceof SimpleSOAPEventType) {
-            requestBody = ((SimpleSOAPEventType) event.getType()).getSoapRequestBody();
+            if( useRandomRequestBodies ) {
+                requestBody = ((SimpleSOAPEventType) event.getType()).getRandomSoapRequestBody();
+            } else {
+                requestBody = ((SimpleSOAPEventType) event.getType()).getSoapRequestBody();
+            }
         }
         return requestBody;
@@ -295,25 +322,29 @@
      * </p>
      *
-     * @param sequence sequences where the operation names are normalized
-     */
-    public static List<Event> normalizeOperationNames(List<Event> sequence, String prefixToRemove, String suffixToRemove) {
-        List<Event> normalizedSequence = new LinkedList<>();
-        for (Iterator<Event> eventIter = sequence.iterator(); eventIter.hasNext();) {
-            Event event = eventIter.next();
-            if ((event.getType() instanceof SimpleSOAPEventType)) {
-                SimpleSOAPEventType eventType = (SimpleSOAPEventType) event.getType();
-                String methodName = eventType.getCalledMethod();
-                if( prefixToRemove!=null && methodName.startsWith(prefixToRemove) ) {
-                    methodName = methodName.substring(prefixToRemove.length(), methodName.length());
-                    // remove prefix
-                } 
-                if( suffixToRemove!=null && methodName.endsWith(suffixToRemove) ) {
-                    methodName = methodName.substring(0, methodName.length()-suffixToRemove.length());
+     * @param sequences sequences where the operation names are normalized
+     */
+    public static Collection<List<Event>> normalizeOperationNames(Collection<List<Event>> sequences, String prefixToRemove, String suffixToRemove) {
+        Collection<List<Event>> normalizedSequences = new LinkedList<>();
+        for(List<Event> sequence : sequences ) {
+            List<Event> normalizedSequence = new LinkedList<>();
+            for (Iterator<Event> eventIter = sequence.iterator(); eventIter.hasNext();) {
+                Event event = eventIter.next();
+                if ((event.getType() instanceof SimpleSOAPEventType)) {
+                    SimpleSOAPEventType eventType = (SimpleSOAPEventType) event.getType();
+                    String methodName = eventType.getCalledMethod();
+                    if( prefixToRemove!=null && methodName.startsWith(prefixToRemove) ) {
+                        methodName = methodName.substring(prefixToRemove.length(), methodName.length());
+                        // remove prefix
+                    } 
+                    if( suffixToRemove!=null && methodName.endsWith(suffixToRemove) ) {
+                        methodName = methodName.substring(0, methodName.length()-suffixToRemove.length());
+                    }
+                    event = new Event(new SimpleSOAPEventType(methodName, eventType.getServiceName(), eventType.getClientName(), eventType.getSoapRequestBody(), eventType.getEqualSOAPDataMap()), event.getTarget());
                 }
-                event = new Event(new SimpleSOAPEventType(methodName, eventType.getServiceName(), eventType.getClientName(), eventType.getSoapRequestBody()), event.getTarget());
-            }
-            normalizedSequence.add(event);
-        }
-        return normalizedSequence;
+                normalizedSequence.add(event);
+            }
+            normalizedSequences.add(normalizedSequence);
+        }
+        return normalizedSequences;
     }
 
Index: /trunk/autoquest-plugin-http/src/main/java/de/ugoe/cs/autoquest/plugin/http/eventcore/EqualSOAPDataMap.java
===================================================================
--- /trunk/autoquest-plugin-http/src/main/java/de/ugoe/cs/autoquest/plugin/http/eventcore/EqualSOAPDataMap.java	(revision 1987)
+++ /trunk/autoquest-plugin-http/src/main/java/de/ugoe/cs/autoquest/plugin/http/eventcore/EqualSOAPDataMap.java	(revision 1988)
@@ -15,7 +15,4 @@
 package de.ugoe.cs.autoquest.plugin.http.eventcore;
 
-import java.io.IOException;
-import java.io.ObjectInputStream;
-import java.io.ObjectOutputStream;
 import java.io.Serializable;
 import java.util.Collections;
@@ -38,9 +35,4 @@
     /**  */
     private static final long serialVersionUID = 1L;
-
-    /**
-     * Singleton. Handle to only instance of this class
-     */
-    transient private static EqualSOAPDataMap INSTANCE = new EqualSOAPDataMap();
     
     /**
@@ -52,71 +44,15 @@
      * random number generator for picking a random request body
      */
-    transient private final Random random;
-    
-    /**
-     * <p>
-     * return the instance of the class
-     * </p>
-     *
-     * @return
-     */
-    public static EqualSOAPDataMap getInstance() {
-        return INSTANCE;
-    }
-    
-    private EqualSOAPDataMap() {
-        // private constructor to avoid initialization
-        random = new Random();
-    }
-    
-    /**
-     * <p>
-     * Manual serialization of the object. Necessary to guarantee the singleton
-     * property.
-     * </p>
-     * 
-     * @param s
-     *            output stream for the serialization
-     * @throws IOException
-     *             thrown if there is problem writing to the output stream
-     */
-    private void writeObject(ObjectOutputStream s) throws IOException {
-            s.defaultWriteObject();
-            s.writeObject(soapRequestBodies);
-    }
+    private final Random random = new Random();
 
     /**
      * <p>
-     * Manual de-serialization of the object. Necessary to guarantee the
-     * singleton property.
-     * 
-     * @param s
-     *            input stream for the de-serialization
-     * @throws IOException
-     *             thrown if there is problem reading from the input stream
-     * @throws ClassNotFoundException
-     *             thrown if there is a problem reading from the input stream
+     * Default constructor. 
+     * </p>
      */
-    @SuppressWarnings("unchecked")
-    private void readObject(ObjectInputStream s) throws IOException,
-                    ClassNotFoundException {
-            s.defaultReadObject();
-            if (INSTANCE == null) {
-                INSTANCE = new EqualSOAPDataMap();
-            }
-            INSTANCE.soapRequestBodies = (Map<SimpleSOAPEventType, ListOrderedSet<String>>) s.readObject();
+    public EqualSOAPDataMap() {
+        
     }
-
-    /**
-     * <p>
-     * Manual de-serialization to guarantee the singleton property.
-     * </p>
-     * 
-     * @return instance of the container
-     */
-    private Object readResolve() {
-            return INSTANCE;
-    }
-
+    
     /**
      * <p>
@@ -175,3 +111,14 @@
         soapRequestBodies = new HashMap<>();
     }
+    
+    /**
+     * <p>
+     * returns is the current data map is empty
+     * </p>
+     *
+     * @return true if empty; false otherwise
+     */
+    public boolean isEmpty() {
+        return soapRequestBodies.isEmpty();
+    }
 }
Index: /trunk/autoquest-plugin-http/src/main/java/de/ugoe/cs/autoquest/plugin/http/eventcore/SimpleSOAPEventType.java
===================================================================
--- /trunk/autoquest-plugin-http/src/main/java/de/ugoe/cs/autoquest/plugin/http/eventcore/SimpleSOAPEventType.java	(revision 1987)
+++ /trunk/autoquest-plugin-http/src/main/java/de/ugoe/cs/autoquest/plugin/http/eventcore/SimpleSOAPEventType.java	(revision 1988)
@@ -42,9 +42,4 @@
 
     /**
-     * see {@link RequestBodyMode}
-     */
-    private static RequestBodyMode requestBodyMode = RequestBodyMode.LOCALEVENT;
-
-    /**
      * <p>
      * the SOAP method called in this request
@@ -74,4 +69,9 @@
      */
     private final String soapRequestBody;
+    
+    /**
+     * TODO
+     */
+    private final EqualSOAPDataMap equalRequestsMap;
 
     /**
@@ -86,4 +86,19 @@
                                Element soapRequestBody)
     {
+        this(calledMethod, serviceName, clientName, soapRequestBody, null);
+    }
+    
+    /**
+     * <p>
+     * Constructor. Creates a new SimpleSOAPEventType with a EqualSOAPDATAMap. 
+     * </p>
+     * 
+     */
+    public SimpleSOAPEventType(String calledMethod,
+                               String serviceName,
+                               String clientName,
+                               Element soapRequestBody,
+                               EqualSOAPDataMap equalRequestsMap)
+    {
         if (calledMethod == null) {
             throw new IllegalArgumentException("called method must not be null");
@@ -99,5 +114,8 @@
         this.clientName = clientName;
         this.soapRequestBody = SOAPUtils.getSerialization(soapRequestBody);
-        EqualSOAPDataMap.getInstance().add(this, this.soapRequestBody);
+        this.equalRequestsMap = equalRequestsMap;
+        if( equalRequestsMap!=null ) {
+            equalRequestsMap.add(this, this.soapRequestBody);
+        }
     }
 
@@ -144,27 +162,23 @@
      */
     public Element getSoapRequestBody() {
-        String requestBody;
-        switch (requestBodyMode)
-        {
-            case LOCALEVENT:
-                requestBody = soapRequestBody;
-                break;
-            case RANDOM:
-                requestBody = EqualSOAPDataMap.getInstance().getRandom(this);
-                break;
-            default:
-                throw new RuntimeException("undefined RequestBodyMode");
-        }
-        if (requestBody == null) {
-            System.err.println("foobar" + this);
-            System.err.println(EqualSOAPDataMap.getInstance().getAll(this));
-        }
-        try {
-            return DocumentBuilderFactory.newInstance().newDocumentBuilder()
-                .parse(new ByteArrayInputStream(requestBody.getBytes())).getDocumentElement();
-        }
-        catch (SAXException | IOException | ParserConfigurationException e) {
-            return null;
-        }
+        return createDOMElement(soapRequestBody);
+    }
+    
+    /**
+     * <p>
+     * returns a randomly draw request body for the called method using {@link EqualSOAPDataMap#getRandom(SimpleSOAPEventType)}
+     * </p>
+     *
+     * @return randomly drawn body of the SOAP request
+     */
+    public Element getRandomSoapRequestBody() {
+        if( equalRequestsMap==null ) {
+            throw new RuntimeException("cannot use random mode is no request map is available; different data missing");
+        }
+        return createDOMElement(equalRequestsMap.getRandom(this));
+    }
+    
+    public EqualSOAPDataMap getEqualSOAPDataMap() {
+        return equalRequestsMap;
     }
 
@@ -220,40 +234,28 @@
     }
 
-    /**
-     * <p>
-     * returns the current {@link RequestBodyMode}
-     * </p>
-     * 
-     * @return the requestBodyMode
-     */
-    public static RequestBodyMode getRequestBodyMode() {
-        return requestBodyMode;
-    }
-
-    /**
-     * <p>
-     * sets the {@link RequestBodyMode}
-     * </p>
-     * 
-     * @param new requestBodyMode
-     */
-    public static void setRequestBodyMode(RequestBodyMode requestBodyMode) {
-        SimpleSOAPEventType.requestBodyMode = requestBodyMode;
-    }
-
-    /**
-     * <p>
-     * Determines how getSoapRequestBody works.
-     * <ul>
-     * <li>LOCALEVENT: returns the request body of the event type itself</li>
-     * <li>RANDOM: returns a randomly draw request body for the called method using
-     * {@link EqualSOAPDataMap#getRandom(SimpleSOAPEventType)}.
-     * </ul>
-     * </p>
-     * 
-     * @author Steffen Herbold
-     */
-    public static enum RequestBodyMode {
-        LOCALEVENT, RANDOM
-    }
+    private Element createDOMElement(String requestBody) {
+        try {
+            return DocumentBuilderFactory.newInstance().newDocumentBuilder()
+                .parse(new ByteArrayInputStream(requestBody.getBytes())).getDocumentElement();
+        }
+        catch (SAXException | IOException | ParserConfigurationException e) {
+            return null;
+        }
+    }
+//
+//    /**
+//     * <p>
+//     * Determines how getSoapRequestBody works.
+//     * <ul>
+//     * <li>LOCALEVENT: returns the request body of the event type itself</li>
+//     * <li>RANDOM: returns a randomly draw request body for the called method using
+//     * {@link EqualSOAPDataMap#getRandom(SimpleSOAPEventType)}.
+//     * </ul>
+//     * </p>
+//     * 
+//     * @author Steffen Herbold
+//     */
+//    public static enum RequestBodyMode {
+//        LOCALEVENT, RANDOM
+//    }
 }
Index: /trunk/autoquest-plugin-uml/src/main/java/de/ugoe/cs/autoquest/plugin/uml/UMLUtils.java
===================================================================
--- /trunk/autoquest-plugin-uml/src/main/java/de/ugoe/cs/autoquest/plugin/uml/UMLUtils.java	(revision 1987)
+++ /trunk/autoquest-plugin-uml/src/main/java/de/ugoe/cs/autoquest/plugin/uml/UMLUtils.java	(revision 1988)
@@ -425,9 +425,12 @@
      *            Name of the test context that should be used. If this value is null, the first
      *            test context found is used.
+     * @param useRandomRequestBodies
+     *            defines is random request bodies are used or the body of the associated event
      */
     public static Interaction createInteractionFromEventSequence(List<Event> sequence,
                                                                  Model model,
                                                                  String interactionName,
-                                                                 String testContextName)
+                                                                 String testContextName,
+                                                                 boolean useRandomRequestBodies)
     {
         final Component testContext = fetchTestContext(model, testContextName);
@@ -546,5 +549,5 @@
                 Message callMessage = interaction.createMessage(prefix + "call");
                 callMessage.setSignature(calledOperation);
-                setCallMessageParameters(callMessage, calledOperation, event, prefix);
+                setCallMessageParameters(callMessage, calledOperation, event, useRandomRequestBodies, prefix);
                 callMessage.setConnector(connector);
                 callMessage.setSendEvent(callSendFragment);
@@ -1025,4 +1028,6 @@
      * @param event
      *            event that provides the parameters; in case of null, default values are assumed
+     * @param useRandomRequestBodies
+     *            defines is random request bodies are used or the body of the associated event
      * @param prefix
      *            prefix of the call message; used to create good warnings and debugging information
@@ -1031,7 +1036,8 @@
                                                  Operation calledOperation,
                                                  Event event,
+                                                 boolean useRandomRequestBodies,
                                                  String prefix)
     {
-        org.w3c.dom.Element requestBody = SOAPUtils.getSoapRequestBodyFromEvent(event);
+        org.w3c.dom.Element requestBody = SOAPUtils.getSoapRequestBodyFromEvent(event, useRandomRequestBodies);
         Package instSpecPkg = null;
 
