From 31497694c92b23c6018667c66d6d331a13a62be2 Mon Sep 17 00:00:00 2001
From: delas <delas@users.noreply.github.com>
Date: Fri, 25 Mar 2022 19:30:21 +0000
Subject: [PATCH] =?UTF-8?q?Deploying=20to=20javadoc=20from=20@=20beamline/?=
 =?UTF-8?q?framework@a7126e962a6fdfa8401a72e507b824d1547f10e2=20?=
 =?UTF-8?q?=F0=9F=9A=80?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 allclasses-index.html                         | 121 ++-
 allclasses.html                               |  21 +-
 allpackages-index.html                        |  27 +-
 beamline/events/BEvent.html                   | 738 ++++++++++++++++++
 beamline/events/class-use/BEvent.html         | 423 ++++++++++
 .../{utils => events}/package-summary.html    |  21 +-
 .../{mappers => events}/package-tree.html     |  13 +-
 beamline/{mappers => events}/package-use.html | 121 ++-
 beamline/exceptions/EventException.html       |   4 +-
 beamline/exceptions/SourceException.html      |   4 +-
 .../exceptions/class-use/EventException.html  |  35 +-
 .../exceptions/class-use/SourceException.html |  72 +-
 beamline/exceptions/package-summary.html      |   4 +-
 beamline/exceptions/package-tree.html         |   4 +-
 beamline/exceptions/package-use.html          |  39 +-
 beamline/filters/ExcludeActivitiesFilter.html |  14 +-
 .../ExcludeOnCaseAttributeEqualityFilter.html |  30 +-
 ...ExcludeOnEventAttributeEqualityFilter.html |  32 +-
 beamline/filters/RetainActivitiesFilter.html  |  14 +-
 .../RetainOnCaseAttributeEqualityFilter.html  |  30 +-
 .../RetainOnEventAttributeEqualityFilter.html |  32 +-
 .../class-use/ExcludeActivitiesFilter.html    |   4 +-
 .../ExcludeOnCaseAttributeEqualityFilter.html |   4 +-
 ...ExcludeOnEventAttributeEqualityFilter.html |   4 +-
 .../class-use/RetainActivitiesFilter.html     |   4 +-
 .../RetainOnCaseAttributeEqualityFilter.html  |   4 +-
 .../RetainOnEventAttributeEqualityFilter.html |   4 +-
 beamline/filters/package-summary.html         |  12 +-
 beamline/filters/package-tree.html            |  12 +-
 beamline/filters/package-use.html             |   4 +-
 .../class-use/DirectlyFollowsRelation.html    | 196 -----
 beamline/mappers/package-summary.html         | 183 -----
 .../algorithms/HookEventProcessing.html       | 262 -------
 .../InfiniteSizeDirectlyFollowsMapper.html    | 372 +++++++++
 .../algorithms/StreamMiningAlgorithm.html     | 215 +++--
 .../InfiniteSizeDirectlyFollowsMapper.html    |  54 +-
 .../class-use/StreamMiningAlgorithm.html      |  56 +-
 .../models/algorithms/package-summary.html    |  31 +-
 beamline/models/algorithms/package-tree.html  |  22 +-
 beamline/models/algorithms/package-use.html   |  11 +-
 .../responses/DirectlyFollowsRelation.html    | 426 ++++++++++
 .../models/responses/GraphvizResponse.html    |  97 ++-
 beamline/models/responses/Response.html       | 165 +++-
 beamline/models/responses/StringResponse.html | 359 +++++++++
 .../class-use/DirectlyFollowsRelation.html}   |  37 +-
 .../responses/class-use/GraphvizResponse.html |  14 +-
 .../models/responses/class-use/Response.html  |  72 +-
 .../responses/class-use/StringResponse.html}  |  62 +-
 .../models/responses/package-summary.html     |  27 +-
 beamline/models/responses/package-tree.html   |  16 +-
 beamline/models/responses/package-use.html    |  37 +-
 .../BeamlineAbstractSource.html}              | 163 ++--
 .../CSVLogSource.ParserConfiguration.html}    |  71 +-
 beamline/sources/CSVLogSource.html            | 154 ++--
 beamline/sources/MQTTXesSource.html           | 117 +--
 beamline/sources/Source.html                  | 306 --------
 beamline/sources/StringTestSource.html        | 366 +++++++++
 beamline/sources/XesLogSource.html            | 129 +--
 beamline/sources/XesSource.html               | 229 ------
 ...ource.html => BeamlineAbstractSource.html} |  41 +-
 ... => CSVLogSource.ParserConfiguration.html} |  63 +-
 beamline/sources/class-use/CSVLogSource.html  |   4 +-
 beamline/sources/class-use/MQTTXesSource.html |   4 +-
 .../class-use/StringTestSource.html}          |  16 +-
 beamline/sources/class-use/XesLogSource.html  |   4 +-
 beamline/sources/package-summary.html         |  53 +-
 beamline/sources/package-tree.html            |  28 +-
 beamline/sources/package-use.html             |  20 +-
 beamline/utils/EventUtils.html                | 404 ----------
 beamline/utils/package-tree.html              | 164 ----
 constant-values.html                          |   4 +-
 deprecated-list.html                          |   4 +-
 element-list                                  |   3 +-
 help-doc.html                                 |   4 +-
 index-all.html                                | 289 ++++---
 index.html                                    |  27 +-
 member-search-index.js                        |   2 +-
 member-search-index.zip                       | Bin 961 -> 1307 bytes
 overview-summary.html                         |   2 +-
 overview-tree.html                            |  72 +-
 package-search-index.js                       |   2 +-
 package-search-index.zip                      | Bin 282 -> 278 bytes
 serialized-form.html                          | 423 +++++++++-
 type-search-index.js                          |   2 +-
 type-search-index.zip                         | Bin 474 -> 492 bytes
 85 files changed, 4725 insertions(+), 3010 deletions(-)
 create mode 100644 beamline/events/BEvent.html
 create mode 100644 beamline/events/class-use/BEvent.html
 rename beamline/{utils => events}/package-summary.html (86%)
 rename beamline/{mappers => events}/package-tree.html (84%)
 rename beamline/{mappers => events}/package-use.html (54%)
 delete mode 100644 beamline/mappers/class-use/DirectlyFollowsRelation.html
 delete mode 100644 beamline/mappers/package-summary.html
 delete mode 100644 beamline/models/algorithms/HookEventProcessing.html
 create mode 100644 beamline/models/algorithms/InfiniteSizeDirectlyFollowsMapper.html
 rename beamline/{mappers => models/algorithms}/class-use/InfiniteSizeDirectlyFollowsMapper.html (60%)
 create mode 100644 beamline/models/responses/DirectlyFollowsRelation.html
 create mode 100644 beamline/models/responses/StringResponse.html
 rename beamline/models/{algorithms/class-use/HookEventProcessing.html => responses/class-use/DirectlyFollowsRelation.html} (67%)
 rename beamline/{utils/package-use.html => models/responses/class-use/StringResponse.html} (55%)
 rename beamline/{mappers/DirectlyFollowsRelation.html => sources/BeamlineAbstractSource.html} (69%)
 rename beamline/{mappers/InfiniteSizeDirectlyFollowsMapper.html => sources/CSVLogSource.ParserConfiguration.html} (75%)
 delete mode 100644 beamline/sources/Source.html
 create mode 100644 beamline/sources/StringTestSource.html
 delete mode 100644 beamline/sources/XesSource.html
 rename beamline/sources/class-use/{XesSource.html => BeamlineAbstractSource.html} (72%)
 rename beamline/sources/class-use/{Source.html => CSVLogSource.ParserConfiguration.html} (62%)
 rename beamline/{utils/class-use/EventUtils.html => sources/class-use/StringTestSource.html} (86%)
 delete mode 100644 beamline/utils/EventUtils.html
 delete mode 100644 beamline/utils/package-tree.html

diff --git a/allclasses-index.html b/allclasses-index.html
index 3965b36..0095352 100644
--- a/allclasses-index.html
+++ b/allclasses-index.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>All Classes (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
@@ -27,8 +27,8 @@
     catch(err) {
     }
 //-->
-var data = {"i0":2,"i1":2,"i2":8,"i3":2,"i4":2,"i5":2,"i6":2,"i7":1,"i8":1,"i9":2,"i10":2,"i11":1,"i12":2,"i13":2,"i14":2,"i15":1,"i16":8,"i17":2,"i18":2,"i19":1};
-var tabs = {65535:["t0","All Classes"],1:["t1","Interface Summary"],2:["t2","Class Summary"],8:["t4","Exception Summary"]};
+var data = {"i0":2,"i1":2,"i2":2,"i3":2,"i4":2,"i5":8,"i6":2,"i7":2,"i8":2,"i9":2,"i10":2,"i11":2,"i12":2,"i13":2,"i14":2,"i15":2,"i16":8,"i17":2,"i18":2,"i19":2,"i20":2};
+var tabs = {65535:["t0","All Classes"],2:["t2","Class Summary"],8:["t4","Exception Summary"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -106,142 +106,139 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="blockList">
 <li class="blockList">
 <table class="typeSummary">
-<caption><span id="t0" class="activeTableTab"><span>All Classes</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Interface Summary</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Class Summary</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Exception Summary</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<caption><span id="t0" class="activeTableTab"><span>All Classes</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Class Summary</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Exception Summary</a></span><span class="tabEnd">&nbsp;</span></span></caption>
 <tr>
 <th class="colFirst" scope="col">Class</th>
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><a href="beamline/sources/CSVLogSource.html" title="class in beamline.sources">CSVLogSource</a></td>
+<td class="colFirst"><a href="beamline/sources/BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a></td>
 <th class="colLast" scope="row">
-<div class="block">This implementation of a <a href="beamline/sources/XesSource.html" title="interface in beamline.sources"><code>XesSource</code></a> produces events according to the
- events contained in a CSV file.</div>
+<div class="block">This interface is supposed to bind the type of <code>RichSourceFunction</code> to
+ <a href="beamline/events/BEvent.html" title="class in beamline.events"><code>BEvent</code></a> and to provide minimal infrastructure to check if the sourece
+ is currently running.</div>
 </th>
 </tr>
 <tr id="i1" class="rowColor">
-<td class="colFirst"><a href="beamline/mappers/DirectlyFollowsRelation.html" title="class in beamline.mappers">DirectlyFollowsRelation</a></td>
-<th class="colLast" scope="row">
-<div class="block">This class represents a directly follows relation as produced by
- <a href="beamline/mappers/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.mappers"><code>InfiniteSizeDirectlyFollowsMapper</code></a>.</div>
-</th>
+<td class="colFirst"><a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></td>
+<th class="colLast" scope="row">&nbsp;</th>
 </tr>
 <tr id="i2" class="altColor">
-<td class="colFirst"><a href="beamline/exceptions/EventException.html" title="class in beamline.exceptions">EventException</a></td>
-<th class="colLast" scope="row">&nbsp;</th>
+<td class="colFirst"><a href="beamline/sources/CSVLogSource.html" title="class in beamline.sources">CSVLogSource</a></td>
+<th class="colLast" scope="row">
+<div class="block">This implementation of a <a href="beamline/sources/BeamlineAbstractSource.html" title="class in beamline.sources"><code>BeamlineAbstractSource</code></a> produces events
+ according to the events contained in a CSV file.</div>
+</th>
 </tr>
 <tr id="i3" class="rowColor">
-<td class="colFirst"><a href="beamline/utils/EventUtils.html" title="class in beamline.utils">EventUtils</a></td>
+<td class="colFirst"><a href="beamline/sources/CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">CSVLogSource.ParserConfiguration</a></td>
 <th class="colLast" scope="row">
-<div class="block">This class contains some utility methods useful to handle and process events.</div>
+<div class="block">This class is used to configure the parser of the CSV</div>
 </th>
 </tr>
 <tr id="i4" class="altColor">
+<td class="colFirst"><a href="beamline/models/responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a></td>
+<th class="colLast" scope="row">
+<div class="block">This class represents a directly follows relation as produced by
+ <a href="beamline/models/algorithms/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms"><code>InfiniteSizeDirectlyFollowsMapper</code></a>.</div>
+</th>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><a href="beamline/exceptions/EventException.html" title="class in beamline.exceptions">EventException</a></td>
+<th class="colLast" scope="row">&nbsp;</th>
+</tr>
+<tr id="i6" class="altColor">
 <td class="colFirst"><a href="beamline/filters/ExcludeActivitiesFilter.html" title="class in beamline.filters">ExcludeActivitiesFilter</a></td>
 <th class="colLast" scope="row">
 <div class="block">A specific instance of the <a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters"><code>ExcludeOnEventAttributeEqualityFilter</code></a> that
  considers the name of the activity as attribute to filter.</div>
 </th>
 </tr>
-<tr id="i5" class="rowColor">
-<td class="colFirst"><a href="beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnCaseAttributeEqualityFilter</a>&lt;<a href="beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html" title="type parameter in ExcludeOnCaseAttributeEqualityFilter">T</a> extends org.deckfour.xes.model.XAttribute&gt;</td>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><a href="beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnCaseAttributeEqualityFilter</a>&lt;<a href="beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html" title="type parameter in ExcludeOnCaseAttributeEqualityFilter">T</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">This filter excludes events based on the equality of a certain trace
  attribute to a given set of values.</div>
 </th>
 </tr>
-<tr id="i6" class="altColor">
-<td class="colFirst"><a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnEventAttributeEqualityFilter</a>&lt;<a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="type parameter in ExcludeOnEventAttributeEqualityFilter">T</a> extends org.deckfour.xes.model.XAttribute&gt;</td>
+<tr id="i8" class="altColor">
+<td class="colFirst"><a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnEventAttributeEqualityFilter</a>&lt;<a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="type parameter in ExcludeOnEventAttributeEqualityFilter">T</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">This filter excludes events based on the equality of a certain event
  attribute to a given set of values.</div>
 </th>
 </tr>
-<tr id="i7" class="rowColor">
-<td class="colFirst"><a href="beamline/models/responses/GraphvizResponse.html" title="interface in beamline.models.responses">GraphvizResponse</a></td>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><a href="beamline/models/responses/GraphvizResponse.html" title="class in beamline.models.responses">GraphvizResponse</a></td>
 <th class="colLast" scope="row">
-<div class="block">A refined <a href="beamline/models/responses/Response.html" title="interface in beamline.models.responses"><code>Response</code></a> that can be rendered in Graphviz using the Dot
+<div class="block">A refined <a href="beamline/models/responses/Response.html" title="class in beamline.models.responses"><code>Response</code></a> that can be rendered in Graphviz using the Dot
  language.</div>
 </th>
 </tr>
-<tr id="i8" class="altColor">
-<td class="colFirst"><a href="beamline/models/algorithms/HookEventProcessing.html" title="interface in beamline.models.algorithms">HookEventProcessing</a></td>
-<th class="colLast" scope="row">
-<div class="block">This interface defines the structure of the callback function that a
- <a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms"><code>StreamMiningAlgorithm</code></a> can execute (cf.,
- <a href="beamline/models/algorithms/StreamMiningAlgorithm.html#setOnBeforeEvent(beamline.models.algorithms.HookEventProcessing)"><code>StreamMiningAlgorithm.setOnBeforeEvent(HookEventProcessing)</code></a> and
- <a href="beamline/models/algorithms/StreamMiningAlgorithm.html#setOnAfterEvent(beamline.models.algorithms.HookEventProcessing)"><code>StreamMiningAlgorithm.setOnAfterEvent(HookEventProcessing)</code></a>).</div>
-</th>
-</tr>
-<tr id="i9" class="rowColor">
-<td class="colFirst"><a href="beamline/mappers/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.mappers">InfiniteSizeDirectlyFollowsMapper</a></td>
+<tr id="i10" class="altColor">
+<td class="colFirst"><a href="beamline/models/algorithms/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms">InfiniteSizeDirectlyFollowsMapper</a></td>
 <th class="colLast" scope="row">
 <div class="block">This mapper transforms a stream of <code>XTrace</code>s into a stream of
- <a href="beamline/mappers/DirectlyFollowsRelation.html" title="class in beamline.mappers"><code>DirectlyFollowsRelation</code></a>s.</div>
+ <a href="beamline/models/responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses"><code>DirectlyFollowsRelation</code></a>s.</div>
 </th>
 </tr>
-<tr id="i10" class="altColor">
+<tr id="i11" class="rowColor">
 <td class="colFirst"><a href="beamline/sources/MQTTXesSource.html" title="class in beamline.sources">MQTTXesSource</a></td>
 <th class="colLast" scope="row">
-<div class="block">This implementation of a <a href="beamline/sources/XesSource.html" title="interface in beamline.sources"><code>XesSource</code></a> produces events as they are
- observed in an MQTT-XES broker.</div>
+<div class="block">This implementation of a <a href="beamline/sources/BeamlineAbstractSource.html" title="class in beamline.sources"><code>BeamlineAbstractSource</code></a> produces events as
+ they are observed in an MQTT-XES broker.</div>
 </th>
 </tr>
-<tr id="i11" class="rowColor">
-<td class="colFirst"><a href="beamline/models/responses/Response.html" title="interface in beamline.models.responses">Response</a></td>
+<tr id="i12" class="altColor">
+<td class="colFirst"><a href="beamline/models/responses/Response.html" title="class in beamline.models.responses">Response</a></td>
 <th class="colLast" scope="row">
 <div class="block">Marker interface used to define the type of the responses</div>
 </th>
 </tr>
-<tr id="i12" class="altColor">
+<tr id="i13" class="rowColor">
 <td class="colFirst"><a href="beamline/filters/RetainActivitiesFilter.html" title="class in beamline.filters">RetainActivitiesFilter</a></td>
 <th class="colLast" scope="row">
 <div class="block">A specific instance of the <a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters"><code>RetainOnEventAttributeEqualityFilter</code></a> that
  considers the name of the activity as attribute to filter.</div>
 </th>
 </tr>
-<tr id="i13" class="rowColor">
-<td class="colFirst"><a href="beamline/filters/RetainOnCaseAttributeEqualityFilter.html" title="class in beamline.filters">RetainOnCaseAttributeEqualityFilter</a>&lt;<a href="beamline/filters/RetainOnCaseAttributeEqualityFilter.html" title="type parameter in RetainOnCaseAttributeEqualityFilter">T</a> extends org.deckfour.xes.model.XAttribute&gt;</td>
+<tr id="i14" class="altColor">
+<td class="colFirst"><a href="beamline/filters/RetainOnCaseAttributeEqualityFilter.html" title="class in beamline.filters">RetainOnCaseAttributeEqualityFilter</a>&lt;<a href="beamline/filters/RetainOnCaseAttributeEqualityFilter.html" title="type parameter in RetainOnCaseAttributeEqualityFilter">T</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">This filter retains events based on the equality of a certain trace
  attribute to a given set of values.</div>
 </th>
 </tr>
-<tr id="i14" class="altColor">
-<td class="colFirst"><a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters">RetainOnEventAttributeEqualityFilter</a>&lt;<a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html" title="type parameter in RetainOnEventAttributeEqualityFilter">T</a> extends org.deckfour.xes.model.XAttribute&gt;</td>
+<tr id="i15" class="rowColor">
+<td class="colFirst"><a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters">RetainOnEventAttributeEqualityFilter</a>&lt;<a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html" title="type parameter in RetainOnEventAttributeEqualityFilter">T</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">This filter retains events based on the equality of a certain event
  attribute to a given set of values.</div>
 </th>
 </tr>
-<tr id="i15" class="rowColor">
-<td class="colFirst"><a href="beamline/sources/Source.html" title="interface in beamline.sources">Source</a>&lt;<a href="beamline/sources/Source.html" title="type parameter in Source">T</a>&gt;</td>
-<th class="colLast" scope="row">
-<div class="block">This interface is the base type that should be extended by all sources to be
- used in the framework.</div>
-</th>
-</tr>
 <tr id="i16" class="altColor">
 <td class="colFirst"><a href="beamline/exceptions/SourceException.html" title="class in beamline.exceptions">SourceException</a></td>
 <th class="colLast" scope="row">&nbsp;</th>
 </tr>
 <tr id="i17" class="rowColor">
-<td class="colFirst"><a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a>&lt;<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a>,&#8203;<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">K</a>&gt;</td>
+<td class="colFirst"><a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a>&lt;<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a> extends <a href="beamline/models/responses/Response.html" title="class in beamline.models.responses">Response</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">This abstract class defines the root of the mining algorithms hierarchy.</div>
 </th>
 </tr>
 <tr id="i18" class="altColor">
-<td class="colFirst"><a href="beamline/sources/XesLogSource.html" title="class in beamline.sources">XesLogSource</a></td>
-<th class="colLast" scope="row">
-<div class="block">This implementation of a <a href="beamline/sources/XesSource.html" title="interface in beamline.sources"><code>XesSource</code></a> produces events according to the
- events contained in an <code>XLog</code>.</div>
-</th>
+<td class="colFirst"><a href="beamline/models/responses/StringResponse.html" title="class in beamline.models.responses">StringResponse</a></td>
+<th class="colLast" scope="row">&nbsp;</th>
 </tr>
 <tr id="i19" class="rowColor">
-<td class="colFirst"><a href="beamline/sources/XesSource.html" title="interface in beamline.sources">XesSource</a></td>
+<td class="colFirst"><a href="beamline/sources/StringTestSource.html" title="class in beamline.sources">StringTestSource</a></td>
+<th class="colLast" scope="row">&nbsp;</th>
+</tr>
+<tr id="i20" class="altColor">
+<td class="colFirst"><a href="beamline/sources/XesLogSource.html" title="class in beamline.sources">XesLogSource</a></td>
 <th class="colLast" scope="row">
-<div class="block">This interface is supposed just to bind the type of <a href="beamline/sources/Source.html" title="interface in beamline.sources"><code>Source</code></a> to
- <code>XTrace</code>.</div>
+<div class="block">This implementation of a <a href="beamline/sources/BeamlineAbstractSource.html" title="class in beamline.sources"><code>BeamlineAbstractSource</code></a> produces events
+ according to the events contained in an <code>XLog</code>.</div>
 </th>
 </tr>
 </table>
diff --git a/allclasses.html b/allclasses.html
index b1c741d..8b02770 100644
--- a/allclasses.html
+++ b/allclasses.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>All Classes (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
@@ -21,26 +21,27 @@
 <h1 class="bar">All&nbsp;Classes</h1>
 <main role="main" class="indexContainer">
 <ul>
+<li><a href="beamline/sources/BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a></li>
+<li><a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></li>
 <li><a href="beamline/sources/CSVLogSource.html" title="class in beamline.sources">CSVLogSource</a></li>
-<li><a href="beamline/mappers/DirectlyFollowsRelation.html" title="class in beamline.mappers">DirectlyFollowsRelation</a></li>
+<li><a href="beamline/sources/CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">CSVLogSource.ParserConfiguration</a></li>
+<li><a href="beamline/models/responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a></li>
 <li><a href="beamline/exceptions/EventException.html" title="class in beamline.exceptions">EventException</a></li>
-<li><a href="beamline/utils/EventUtils.html" title="class in beamline.utils">EventUtils</a></li>
 <li><a href="beamline/filters/ExcludeActivitiesFilter.html" title="class in beamline.filters">ExcludeActivitiesFilter</a></li>
 <li><a href="beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnCaseAttributeEqualityFilter</a></li>
 <li><a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnEventAttributeEqualityFilter</a></li>
-<li><a href="beamline/models/responses/GraphvizResponse.html" title="interface in beamline.models.responses"><span class="interfaceName">GraphvizResponse</span></a></li>
-<li><a href="beamline/models/algorithms/HookEventProcessing.html" title="interface in beamline.models.algorithms"><span class="interfaceName">HookEventProcessing</span></a></li>
-<li><a href="beamline/mappers/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.mappers">InfiniteSizeDirectlyFollowsMapper</a></li>
+<li><a href="beamline/models/responses/GraphvizResponse.html" title="class in beamline.models.responses">GraphvizResponse</a></li>
+<li><a href="beamline/models/algorithms/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms">InfiniteSizeDirectlyFollowsMapper</a></li>
 <li><a href="beamline/sources/MQTTXesSource.html" title="class in beamline.sources">MQTTXesSource</a></li>
-<li><a href="beamline/models/responses/Response.html" title="interface in beamline.models.responses"><span class="interfaceName">Response</span></a></li>
+<li><a href="beamline/models/responses/Response.html" title="class in beamline.models.responses">Response</a></li>
 <li><a href="beamline/filters/RetainActivitiesFilter.html" title="class in beamline.filters">RetainActivitiesFilter</a></li>
 <li><a href="beamline/filters/RetainOnCaseAttributeEqualityFilter.html" title="class in beamline.filters">RetainOnCaseAttributeEqualityFilter</a></li>
 <li><a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters">RetainOnEventAttributeEqualityFilter</a></li>
-<li><a href="beamline/sources/Source.html" title="interface in beamline.sources"><span class="interfaceName">Source</span></a></li>
 <li><a href="beamline/exceptions/SourceException.html" title="class in beamline.exceptions">SourceException</a></li>
 <li><a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a></li>
+<li><a href="beamline/models/responses/StringResponse.html" title="class in beamline.models.responses">StringResponse</a></li>
+<li><a href="beamline/sources/StringTestSource.html" title="class in beamline.sources">StringTestSource</a></li>
 <li><a href="beamline/sources/XesLogSource.html" title="class in beamline.sources">XesLogSource</a></li>
-<li><a href="beamline/sources/XesSource.html" title="interface in beamline.sources"><span class="interfaceName">XesSource</span></a></li>
 </ul>
 </main>
 </body>
diff --git a/allpackages-index.html b/allpackages-index.html
index f596530..17198aa 100644
--- a/allpackages-index.html
+++ b/allpackages-index.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>All Packages (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
@@ -107,20 +107,17 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </tr>
 <tbody>
 <tr class="altColor">
-<th class="colFirst" scope="row"><a href="beamline/exceptions/package-summary.html">beamline.exceptions</a></th>
+<th class="colFirst" scope="row"><a href="beamline/events/package-summary.html">beamline.events</a></th>
 <td class="colLast">&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<th class="colFirst" scope="row"><a href="beamline/filters/package-summary.html">beamline.filters</a></th>
-<td class="colLast">
-<div class="block">This package contains some filters that are available by default in the
- framework.</div>
-</td>
+<th class="colFirst" scope="row"><a href="beamline/exceptions/package-summary.html">beamline.exceptions</a></th>
+<td class="colLast">&nbsp;</td>
 </tr>
 <tr class="altColor">
-<th class="colFirst" scope="row"><a href="beamline/mappers/package-summary.html">beamline.mappers</a></th>
+<th class="colFirst" scope="row"><a href="beamline/filters/package-summary.html">beamline.filters</a></th>
 <td class="colLast">
-<div class="block">This package contains some mappers that are available by default in the
+<div class="block">This package contains some filters that are available by default in the
  framework.</div>
 </td>
 </tr>
@@ -142,14 +139,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <th class="colFirst" scope="row"><a href="beamline/sources/package-summary.html">beamline.sources</a></th>
 <td class="colLast">
 <div class="block">This package contains all classes necessary to construct
- <code>Observable</code>s that can be used in the rest of
- the project.</div>
-</td>
-</tr>
-<tr class="altColor">
-<th class="colFirst" scope="row"><a href="beamline/utils/package-summary.html">beamline.utils</a></th>
-<td class="colLast">
-<div class="block">This package contains utility classes to be used throughout the framework.</div>
+ <code>RichSourceFunction</code>s
+ that can be used in the rest of the project.</div>
 </td>
 </tr>
 </tbody>
diff --git a/beamline/events/BEvent.html b/beamline/events/BEvent.html
new file mode 100644
index 0000000..e2cc237
--- /dev/null
+++ b/beamline/events/BEvent.html
@@ -0,0 +1,738 @@
+<!DOCTYPE HTML>
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>BEvent (framework 0.1.0 API)</title>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta name="dc.created" content="2022-03-25">
+<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
+<link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
+<script type="text/javascript" src="../../script.js"></script>
+<script type="text/javascript" src="../../jquery/jszip/dist/jszip.min.js"></script>
+<script type="text/javascript" src="../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
+<!--[if IE]>
+<script type="text/javascript" src="../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
+<![endif]-->
+<script type="text/javascript" src="../../jquery/jquery-3.5.1.js"></script>
+<script type="text/javascript" src="../../jquery/jquery-ui.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="BEvent (framework 0.1.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var data = {"i0":10,"i1":9,"i2":9,"i3":9,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+var pathtoroot = "../../";
+var useModuleDirectories = true;
+loadScripts(document, 'script');</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<header role="banner">
+<nav role="navigation">
+<div class="fixedNav">
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a id="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a id="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../index.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/BEvent.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../index-all.html">Index</a></li>
+<li><a href="../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../allclasses.html">All&nbsp;Classes</a></li>
+</ul>
+<ul class="navListSearch">
+<li><label for="search">SEARCH:</label>
+<input type="text" id="search" value="search" disabled="disabled">
+<input type="reset" id="reset" value="reset" disabled="disabled">
+</li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a id="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+</div>
+<div class="navPadding">&nbsp;</div>
+<script type="text/javascript"><!--
+$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
+//-->
+</script>
+</nav>
+</header>
+<!-- ======== START OF CLASS DATA ======== -->
+<main role="main">
+<div class="header">
+<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.events</a></div>
+<h2 title="Class BEvent" class="title">Class BEvent</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>beamline.events.BEvent</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code>, <code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Comparable</a>&lt;<a href="BEvent.html" title="class in beamline.events">BEvent</a>&gt;</code></dd>
+</dl>
+<hr>
+<pre>public class <span class="typeNameLabel">BEvent</span>
+extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
+implements <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Comparable</a>&lt;<a href="BEvent.html" title="class in beamline.events">BEvent</a>&gt;</pre>
+<dl>
+<dt><span class="simpleTagLabel">Author:</span></dt>
+<dd>Andrea Burattin</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../serialized-form.html#beamline.events.BEvent">Serialized Form</a></dd>
+</dl>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Constructor</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr class="altColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">BEvent</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Constructor of a new event</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+</section>
+<!-- ========== METHOD SUMMARY =========== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Method</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#compareTo(beamline.events.BEvent)">compareTo</a></span>&#8203;(<a href="BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;o)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>static <a href="BEvent.html" title="class in beamline.events">BEvent</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#create(java.lang.String,java.lang.String,java.lang.String)">create</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;processName,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId)</code></th>
+<td class="colLast">
+<div class="block">Creates a new <code>XTrace</code> referring to one event.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>static <a href="BEvent.html" title="class in beamline.events">BEvent</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#create(java.lang.String,java.lang.String,java.lang.String,java.util.Date)">create</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;processName,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Date.html?is-external=true" title="class or interface in java.util" class="externalLink">Date</a>&nbsp;time)</code></th>
+<td class="colLast">
+<div class="block">Creates a new <a href="BEvent.html" title="class in beamline.events"><code>BEvent</code></a> referring to one event</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>static <a href="BEvent.html" title="class in beamline.events">BEvent</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#create(java.lang.String,java.lang.String,java.lang.String,java.util.Date,java.util.Collection)">create</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;processName,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Date.html?is-external=true" title="class or interface in java.util" class="externalLink">Date</a>&nbsp;time,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;org.apache.commons.lang3.tuple.Pair&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&gt;&nbsp;eventAttributes)</code></th>
+<td class="colLast">
+<div class="block">Creates a new <a href="BEvent.html" title="class in beamline.events"><code>BEvent</code></a> referring to one event</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#equals(java.lang.Object)">equals</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;obj)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getEventAttributes()">getEventAttributes</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getEventName()">getEventName</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Date.html?is-external=true" title="class or interface in java.util" class="externalLink">Date</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getEventTime()">getEventTime</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLogAttributes()">getLogAttributes</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getProcessName()">getProcessName</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getTraceAttributes()">getTraceAttributes</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getTraceName()">getTraceName</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hashCode()">hashCode</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setEventAttribute(java.lang.String,java.io.Serializable)">setEventAttribute</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name,
+                 <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&nbsp;value)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i14" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setEventAttribute(java.lang.String,org.deckfour.xes.model.XAttribute)">setEventAttribute</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name,
+                 org.deckfour.xes.model.XAttribute&nbsp;value)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i15" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setEventName(java.lang.String)">setEventName</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i16" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setLogAttribute(java.lang.String,java.io.Serializable)">setLogAttribute</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name,
+               <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&nbsp;value)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i17" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setLogAttribute(java.lang.String,org.deckfour.xes.model.XAttribute)">setLogAttribute</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name,
+               org.deckfour.xes.model.XAttribute&nbsp;value)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i18" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setProcessName(java.lang.String)">setProcessName</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i19" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setTimestamp(java.util.Date)">setTimestamp</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Date.html?is-external=true" title="class or interface in java.util" class="externalLink">Date</a>&nbsp;timestamp)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i20" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setTraceAttribute(java.lang.String,java.io.Serializable)">setTraceAttribute</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name,
+                 <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&nbsp;value)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i21" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setTraceAttribute(java.lang.String,org.deckfour.xes.model.XAttribute)">setTraceAttribute</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name,
+                 org.deckfour.xes.model.XAttribute&nbsp;value)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i22" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setTraceName(java.lang.String)">setTraceName</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i23" class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString()">toString</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
+<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</section>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a id="&lt;init&gt;()">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>BEvent</h4>
+<pre>public&nbsp;BEvent()</pre>
+<div class="block">Constructor of a new event</div>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+<!-- ============ METHOD DETAIL ========== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a id="create(java.lang.String,java.lang.String,java.lang.String,java.util.Date,java.util.Collection)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>create</h4>
+<pre class="methodSignature">public static&nbsp;<a href="BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;create&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;processName,
+                            <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
+                            <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId,
+                            <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Date.html?is-external=true" title="class or interface in java.util" class="externalLink">Date</a>&nbsp;time,
+                            <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;org.apache.commons.lang3.tuple.Pair&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&gt;&nbsp;eventAttributes)
+                     throws <a href="../exceptions/EventException.html" title="class in beamline.exceptions">EventException</a></pre>
+<div class="block">Creates a new <a href="BEvent.html" title="class in beamline.events"><code>BEvent</code></a> referring to one event</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>processName</code> - the name of the process</dd>
+<dd><code>activityName</code> - the name of the activity</dd>
+<dd><code>caseId</code> - the identifier of the process instance</dd>
+<dd><code>time</code> - the time when the event has happened</dd>
+<dd><code>eventAttributes</code> - a collection of string attributes for the event</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the new event</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../exceptions/EventException.html" title="class in beamline.exceptions">EventException</a></code> - this exception is thrown is incomplete information
+ is provided</dd>
+</dl>
+</li>
+</ul>
+<a id="create(java.lang.String,java.lang.String,java.lang.String,java.util.Date)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>create</h4>
+<pre class="methodSignature">public static&nbsp;<a href="BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;create&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;processName,
+                            <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
+                            <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId,
+                            <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Date.html?is-external=true" title="class or interface in java.util" class="externalLink">Date</a>&nbsp;time)
+                     throws <a href="../exceptions/EventException.html" title="class in beamline.exceptions">EventException</a></pre>
+<div class="block">Creates a new <a href="BEvent.html" title="class in beamline.events"><code>BEvent</code></a> referring to one event</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>processName</code> - the name of the process</dd>
+<dd><code>activityName</code> - the name of the activity</dd>
+<dd><code>caseId</code> - the identifier of the process instance</dd>
+<dd><code>time</code> - the time when the event has happened</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the new event</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../exceptions/EventException.html" title="class in beamline.exceptions">EventException</a></code> - this exception is thrown is incomplete information
+ is provided</dd>
+</dl>
+</li>
+</ul>
+<a id="create(java.lang.String,java.lang.String,java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>create</h4>
+<pre class="methodSignature">public static&nbsp;<a href="BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;create&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;processName,
+                            <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
+                            <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId)
+                     throws <a href="../exceptions/EventException.html" title="class in beamline.exceptions">EventException</a></pre>
+<div class="block">Creates a new <code>XTrace</code> referring to one event. The time of the
+ event is set to the current time</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>processName</code> - the name of the process</dd>
+<dd><code>activityName</code> - the name of the activity</dd>
+<dd><code>caseId</code> - the identifier of the process instance</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the new event</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../exceptions/EventException.html" title="class in beamline.exceptions">EventException</a></code> - this exception is thrown is incomplete information
+ is provided</dd>
+</dl>
+</li>
+</ul>
+<a id="setProcessName(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setProcessName</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;setProcessName&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name)</pre>
+</li>
+</ul>
+<a id="getProcessName()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getProcessName</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;getProcessName()</pre>
+</li>
+</ul>
+<a id="setTraceName(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setTraceName</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;setTraceName&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name)</pre>
+</li>
+</ul>
+<a id="getTraceName()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTraceName</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;getTraceName()</pre>
+</li>
+</ul>
+<a id="setEventName(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setEventName</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;setEventName&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name)</pre>
+</li>
+</ul>
+<a id="getEventName()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getEventName</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;getEventName()</pre>
+</li>
+</ul>
+<a id="setTimestamp(java.util.Date)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setTimestamp</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;setTimestamp&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Date.html?is-external=true" title="class or interface in java.util" class="externalLink">Date</a>&nbsp;timestamp)</pre>
+</li>
+</ul>
+<a id="getEventTime()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getEventTime</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Date.html?is-external=true" title="class or interface in java.util" class="externalLink">Date</a>&nbsp;getEventTime()</pre>
+</li>
+</ul>
+<a id="getEventAttributes()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getEventAttributes</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;&nbsp;getEventAttributes()</pre>
+</li>
+</ul>
+<a id="getTraceAttributes()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTraceAttributes</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;&nbsp;getTraceAttributes()</pre>
+</li>
+</ul>
+<a id="getLogAttributes()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getLogAttributes</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;&nbsp;getLogAttributes()</pre>
+</li>
+</ul>
+<a id="setEventAttribute(java.lang.String,java.io.Serializable)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setEventAttribute</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;setEventAttribute&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name,
+                              <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&nbsp;value)</pre>
+</li>
+</ul>
+<a id="setEventAttribute(java.lang.String,org.deckfour.xes.model.XAttribute)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setEventAttribute</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;setEventAttribute&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name,
+                              org.deckfour.xes.model.XAttribute&nbsp;value)</pre>
+</li>
+</ul>
+<a id="setTraceAttribute(java.lang.String,java.io.Serializable)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setTraceAttribute</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;setTraceAttribute&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name,
+                              <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&nbsp;value)</pre>
+</li>
+</ul>
+<a id="setTraceAttribute(java.lang.String,org.deckfour.xes.model.XAttribute)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setTraceAttribute</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;setTraceAttribute&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name,
+                              org.deckfour.xes.model.XAttribute&nbsp;value)</pre>
+</li>
+</ul>
+<a id="setLogAttribute(java.lang.String,java.io.Serializable)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setLogAttribute</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;setLogAttribute&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name,
+                            <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&nbsp;value)</pre>
+</li>
+</ul>
+<a id="setLogAttribute(java.lang.String,org.deckfour.xes.model.XAttribute)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setLogAttribute</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;setLogAttribute&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name,
+                            org.deckfour.xes.model.XAttribute&nbsp;value)</pre>
+</li>
+</ul>
+<a id="toString()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toString</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;toString()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">toString</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+<a id="compareTo(beamline.events.BEvent)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>compareTo</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;compareTo&#8203;(<a href="BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;o)</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Comparable.html?is-external=true#compareTo(T)" title="class or interface in java.lang" class="externalLink">compareTo</a></code>&nbsp;in interface&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Comparable</a>&lt;<a href="BEvent.html" title="class in beamline.events">BEvent</a>&gt;</code></dd>
+</dl>
+</li>
+</ul>
+<a id="equals(java.lang.Object)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>equals</h4>
+<pre class="methodSignature">public&nbsp;boolean&nbsp;equals&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;obj)</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+<a id="hashCode()">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>hashCode</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;hashCode()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+</li>
+</ul>
+</div>
+</div>
+</main>
+<!-- ========= END OF CLASS DATA ========= -->
+<footer role="contentinfo">
+<nav role="navigation">
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a id="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a id="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../index.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/BEvent.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../index-all.html">Index</a></li>
+<li><a href="../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../allclasses.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a id="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+</nav>
+<p class="legalCopy"><small>Copyright &#169; 2022. All rights reserved.</small></p>
+</footer>
+</body>
+</html>
diff --git a/beamline/events/class-use/BEvent.html b/beamline/events/class-use/BEvent.html
new file mode 100644
index 0000000..c34ef4d
--- /dev/null
+++ b/beamline/events/class-use/BEvent.html
@@ -0,0 +1,423 @@
+<!DOCTYPE HTML>
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>Uses of Class beamline.events.BEvent (framework 0.1.0 API)</title>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta name="dc.created" content="2022-03-25">
+<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
+<link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
+<script type="text/javascript" src="../../../script.js"></script>
+<script type="text/javascript" src="../../../jquery/jszip/dist/jszip.min.js"></script>
+<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
+<!--[if IE]>
+<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
+<![endif]-->
+<script type="text/javascript" src="../../../jquery/jquery-3.5.1.js"></script>
+<script type="text/javascript" src="../../../jquery/jquery-ui.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class beamline.events.BEvent (framework 0.1.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var pathtoroot = "../../../";
+var useModuleDirectories = true;
+loadScripts(document, 'script');</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<header role="banner">
+<nav role="navigation">
+<div class="fixedNav">
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a id="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a id="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../index.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../BEvent.html" title="class in beamline.events">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
+</ul>
+<ul class="navListSearch">
+<li><label for="search">SEARCH:</label>
+<input type="text" id="search" value="search" disabled="disabled">
+<input type="reset" id="reset" value="reset" disabled="disabled">
+</li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+</div>
+<a id="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+</div>
+<div class="navPadding">&nbsp;</div>
+<script type="text/javascript"><!--
+$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
+//-->
+</script>
+</nav>
+</header>
+<main role="main">
+<div class="header">
+<h2 title="Uses of Class beamline.events.BEvent" class="title">Uses of Class<br>beamline.events.BEvent</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary">
+<caption><span>Packages that use <a href="../BEvent.html" title="class in beamline.events">BEvent</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<th class="colFirst" scope="row"><a href="#beamline.events">beamline.events</a></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<th class="colFirst" scope="row"><a href="#beamline.filters">beamline.filters</a></th>
+<td class="colLast">
+<div class="block">This package contains some filters that are available by default in the
+ framework.</div>
+</td>
+</tr>
+<tr class="altColor">
+<th class="colFirst" scope="row"><a href="#beamline.models.algorithms">beamline.models.algorithms</a></th>
+<td class="colLast">
+<div class="block">This package contains all classes of the framework necessary to have mining
+ algorithms functioning.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<th class="colFirst" scope="row"><a href="#beamline.models.responses">beamline.models.responses</a></th>
+<td class="colLast">
+<div class="block">This package contains all classes of the framework necessary to handle the
+ responses of mining algorithms.</div>
+</td>
+</tr>
+<tr class="altColor">
+<th class="colFirst" scope="row"><a href="#beamline.sources">beamline.sources</a></th>
+<td class="colLast">
+<div class="block">This package contains all classes necessary to construct
+ <code>RichSourceFunction</code>s
+ that can be used in the rest of the project.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList">
+<section role="region"><a id="beamline.events">
+<!--   -->
+</a>
+<h3>Uses of <a href="../BEvent.html" title="class in beamline.events">BEvent</a> in <a href="../package-summary.html">beamline.events</a></h3>
+<table class="useSummary">
+<caption><span>Methods in <a href="../package-summary.html">beamline.events</a> that return <a href="../BEvent.html" title="class in beamline.events">BEvent</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Method</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../BEvent.html" title="class in beamline.events">BEvent</a></code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">BEvent.</span><code><span class="memberNameLink"><a href="../BEvent.html#create(java.lang.String,java.lang.String,java.lang.String)">create</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;processName,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId)</code></th>
+<td class="colLast">
+<div class="block">Creates a new <code>XTrace</code> referring to one event.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../BEvent.html" title="class in beamline.events">BEvent</a></code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">BEvent.</span><code><span class="memberNameLink"><a href="../BEvent.html#create(java.lang.String,java.lang.String,java.lang.String,java.util.Date)">create</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;processName,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Date.html?is-external=true" title="class or interface in java.util" class="externalLink">Date</a>&nbsp;time)</code></th>
+<td class="colLast">
+<div class="block">Creates a new <a href="../BEvent.html" title="class in beamline.events"><code>BEvent</code></a> referring to one event</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../BEvent.html" title="class in beamline.events">BEvent</a></code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">BEvent.</span><code><span class="memberNameLink"><a href="../BEvent.html#create(java.lang.String,java.lang.String,java.lang.String,java.util.Date,java.util.Collection)">create</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;processName,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Date.html?is-external=true" title="class or interface in java.util" class="externalLink">Date</a>&nbsp;time,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;org.apache.commons.lang3.tuple.Pair&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&gt;&nbsp;eventAttributes)</code></th>
+<td class="colLast">
+<div class="block">Creates a new <a href="../BEvent.html" title="class in beamline.events"><code>BEvent</code></a> referring to one event</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary">
+<caption><span>Methods in <a href="../package-summary.html">beamline.events</a> with parameters of type <a href="../BEvent.html" title="class in beamline.events">BEvent</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Method</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">BEvent.</span><code><span class="memberNameLink"><a href="../BEvent.html#compareTo(beamline.events.BEvent)">compareTo</a></span>&#8203;(<a href="../BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;o)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</section>
+</li>
+<li class="blockList">
+<section role="region"><a id="beamline.filters">
+<!--   -->
+</a>
+<h3>Uses of <a href="../BEvent.html" title="class in beamline.events">BEvent</a> in <a href="../../filters/package-summary.html">beamline.filters</a></h3>
+<table class="useSummary">
+<caption><span>Methods in <a href="../../filters/package-summary.html">beamline.filters</a> with parameters of type <a href="../BEvent.html" title="class in beamline.events">BEvent</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Method</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">ExcludeOnCaseAttributeEqualityFilter.</span><code><span class="memberNameLink"><a href="../../filters/ExcludeOnCaseAttributeEqualityFilter.html#filter(beamline.events.BEvent)">filter</a></span>&#8203;(<a href="../BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;t)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">ExcludeOnEventAttributeEqualityFilter.</span><code><span class="memberNameLink"><a href="../../filters/ExcludeOnEventAttributeEqualityFilter.html#filter(beamline.events.BEvent)">filter</a></span>&#8203;(<a href="../BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;t)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">RetainOnCaseAttributeEqualityFilter.</span><code><span class="memberNameLink"><a href="../../filters/RetainOnCaseAttributeEqualityFilter.html#filter(beamline.events.BEvent)">filter</a></span>&#8203;(<a href="../BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;t)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">RetainOnEventAttributeEqualityFilter.</span><code><span class="memberNameLink"><a href="../../filters/RetainOnEventAttributeEqualityFilter.html#filter(beamline.events.BEvent)">filter</a></span>&#8203;(<a href="../BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;event)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</section>
+</li>
+<li class="blockList">
+<section role="region"><a id="beamline.models.algorithms">
+<!--   -->
+</a>
+<h3>Uses of <a href="../BEvent.html" title="class in beamline.events">BEvent</a> in <a href="../../models/algorithms/package-summary.html">beamline.models.algorithms</a></h3>
+<table class="useSummary">
+<caption><span>Methods in <a href="../../models/algorithms/package-summary.html">beamline.models.algorithms</a> with parameters of type <a href="../BEvent.html" title="class in beamline.events">BEvent</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Method</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">StreamMiningAlgorithm.</span><code><span class="memberNameLink"><a href="../../models/algorithms/StreamMiningAlgorithm.html#flatMap(beamline.events.BEvent,org.apache.flink.util.Collector)">flatMap</a></span>&#8203;(<a href="../BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;event,
+       org.apache.flink.util.Collector&lt;<a href="../../models/algorithms/StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a>&gt;&nbsp;out)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../models/responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a></code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">InfiniteSizeDirectlyFollowsMapper.</span><code><span class="memberNameLink"><a href="../../models/algorithms/InfiniteSizeDirectlyFollowsMapper.html#ingest(beamline.events.BEvent)">ingest</a></span>&#8203;(<a href="../BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;event)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>abstract <a href="../../models/algorithms/StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a></code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">StreamMiningAlgorithm.</span><code><span class="memberNameLink"><a href="../../models/algorithms/StreamMiningAlgorithm.html#ingest(beamline.events.BEvent)">ingest</a></span>&#8203;(<a href="../BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;event)</code></th>
+<td class="colLast">
+<div class="block">This abstract method is what each derive class is expected to implement.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>protected <a href="../../models/algorithms/StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a></code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">StreamMiningAlgorithm.</span><code><span class="memberNameLink"><a href="../../models/algorithms/StreamMiningAlgorithm.html#process(beamline.events.BEvent)">process</a></span>&#8203;(<a href="../BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;event)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</section>
+</li>
+<li class="blockList">
+<section role="region"><a id="beamline.models.responses">
+<!--   -->
+</a>
+<h3>Uses of <a href="../BEvent.html" title="class in beamline.events">BEvent</a> in <a href="../../models/responses/package-summary.html">beamline.models.responses</a></h3>
+<table class="useSummary">
+<caption><span>Methods in <a href="../../models/responses/package-summary.html">beamline.models.responses</a> that return <a href="../BEvent.html" title="class in beamline.events">BEvent</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Method</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../BEvent.html" title="class in beamline.events">BEvent</a></code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">DirectlyFollowsRelation.</span><code><span class="memberNameLink"><a href="../../models/responses/DirectlyFollowsRelation.html#getFrom()">getFrom</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns the source event</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../BEvent.html" title="class in beamline.events">BEvent</a></code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">DirectlyFollowsRelation.</span><code><span class="memberNameLink"><a href="../../models/responses/DirectlyFollowsRelation.html#getTo()">getTo</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns the target event</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary">
+<caption><span>Constructors in <a href="../../models/responses/package-summary.html">beamline.models.responses</a> with parameters of type <a href="../BEvent.html" title="class in beamline.events">BEvent</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Constructor</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../models/responses/DirectlyFollowsRelation.html#%3Cinit%3E(beamline.events.BEvent,beamline.events.BEvent)">DirectlyFollowsRelation</a></span>&#8203;(<a href="../BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;from,
+                       <a href="../BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;to)</code></th>
+<td class="colLast">
+<div class="block">Constructor</div>
+</td>
+</tr>
+</tbody>
+</table>
+</section>
+</li>
+<li class="blockList">
+<section role="region"><a id="beamline.sources">
+<!--   -->
+</a>
+<h3>Uses of <a href="../BEvent.html" title="class in beamline.events">BEvent</a> in <a href="../../sources/package-summary.html">beamline.sources</a></h3>
+<table class="useSummary">
+<caption><span>Method parameters in <a href="../../sources/package-summary.html">beamline.sources</a> with type arguments of type <a href="../BEvent.html" title="class in beamline.events">BEvent</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Method</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">CSVLogSource.</span><code><span class="memberNameLink"><a href="../../sources/CSVLogSource.html#run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)">run</a></span>&#8203;(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext&lt;<a href="../BEvent.html" title="class in beamline.events">BEvent</a>&gt;&nbsp;ctx)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">MQTTXesSource.</span><code><span class="memberNameLink"><a href="../../sources/MQTTXesSource.html#run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)">run</a></span>&#8203;(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext&lt;<a href="../BEvent.html" title="class in beamline.events">BEvent</a>&gt;&nbsp;ctx)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">StringTestSource.</span><code><span class="memberNameLink"><a href="../../sources/StringTestSource.html#run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)">run</a></span>&#8203;(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext&lt;<a href="../BEvent.html" title="class in beamline.events">BEvent</a>&gt;&nbsp;ctx)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">XesLogSource.</span><code><span class="memberNameLink"><a href="../../sources/XesLogSource.html#run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)">run</a></span>&#8203;(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext&lt;<a href="../BEvent.html" title="class in beamline.events">BEvent</a>&gt;&nbsp;ctx)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</section>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</main>
+<footer role="contentinfo">
+<nav role="navigation">
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a id="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a id="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../index.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../BEvent.html" title="class in beamline.events">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+</div>
+<a id="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+</nav>
+<p class="legalCopy"><small>Copyright &#169; 2022. All rights reserved.</small></p>
+</footer>
+</body>
+</html>
diff --git a/beamline/utils/package-summary.html b/beamline/events/package-summary.html
similarity index 86%
rename from beamline/utils/package-summary.html
rename to beamline/events/package-summary.html
index 559eeb8..fa20cab 100644
--- a/beamline/utils/package-summary.html
+++ b/beamline/events/package-summary.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>beamline.utils (framework 0.1.0 API)</title>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>beamline.events (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -21,7 +21,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="beamline.utils (framework 0.1.0 API)";
+            parent.document.title="beamline.events (framework 0.1.0 API)";
         }
     }
     catch(err) {
@@ -94,14 +94,9 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </header>
 <main role="main">
 <div class="header">
-<h1 title="Package" class="title">Package&nbsp;beamline.utils</h1>
+<h1 title="Package" class="title">Package&nbsp;beamline.events</h1>
 </div>
 <div class="contentContainer">
-<section role="region"><a id="package.description">
-<!--   -->
-</a>
-<div class="block">This package contains utility classes to be used throughout the framework.</div>
-</section>
 <ul class="blockList">
 <li class="blockList">
 <table class="typeSummary">
@@ -112,10 +107,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </tr>
 <tbody>
 <tr class="altColor">
-<th class="colFirst" scope="row"><a href="EventUtils.html" title="class in beamline.utils">EventUtils</a></th>
-<td class="colLast">
-<div class="block">This class contains some utility methods useful to handle and process events.</div>
-</td>
+<th class="colFirst" scope="row"><a href="BEvent.html" title="class in beamline.events">BEvent</a></th>
+<td class="colLast">&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/beamline/mappers/package-tree.html b/beamline/events/package-tree.html
similarity index 84%
rename from beamline/mappers/package-tree.html
rename to beamline/events/package-tree.html
index d3ba59e..68796c6 100644
--- a/beamline/mappers/package-tree.html
+++ b/beamline/events/package-tree.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>beamline.mappers Class Hierarchy (framework 0.1.0 API)</title>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>beamline.events Class Hierarchy (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -21,7 +21,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="beamline.mappers Class Hierarchy (framework 0.1.0 API)";
+            parent.document.title="beamline.events Class Hierarchy (framework 0.1.0 API)";
         }
     }
     catch(err) {
@@ -94,7 +94,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </header>
 <main role="main">
 <div class="header">
-<h1 class="title">Hierarchy For Package beamline.mappers</h1>
+<h1 class="title">Hierarchy For Package beamline.events</h1>
 <span class="packageHierarchyLabel">Package Hierarchies:</span>
 <ul class="horizontal">
 <li><a href="../../overview-tree.html">All Packages</a></li>
@@ -106,8 +106,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul>
 <li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink"><span class="typeNameLink">Object</span></a>
 <ul>
-<li class="circle">beamline.mappers.<a href="DirectlyFollowsRelation.html" title="class in beamline.mappers"><span class="typeNameLink">DirectlyFollowsRelation</span></a></li>
-<li class="circle">beamline.mappers.<a href="InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.mappers"><span class="typeNameLink">InfiniteSizeDirectlyFollowsMapper</span></a> (implements io.reactivex.rxjava3.functions.Function&lt;T,&#8203;R&gt;)</li>
+<li class="circle">beamline.events.<a href="BEvent.html" title="class in beamline.events"><span class="typeNameLink">BEvent</span></a> (implements java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>)</li>
 </ul>
 </li>
 </ul>
diff --git a/beamline/mappers/package-use.html b/beamline/events/package-use.html
similarity index 54%
rename from beamline/mappers/package-use.html
rename to beamline/events/package-use.html
index 7dffceb..fb7128d 100644
--- a/beamline/mappers/package-use.html
+++ b/beamline/events/package-use.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>Uses of Package beamline.mappers (framework 0.1.0 API)</title>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>Uses of Package beamline.events (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -21,7 +21,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Package beamline.mappers (framework 0.1.0 API)";
+            parent.document.title="Uses of Package beamline.events (framework 0.1.0 API)";
         }
     }
     catch(err) {
@@ -94,44 +94,135 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </header>
 <main role="main">
 <div class="header">
-<h1 title="Uses of Package beamline.mappers" class="title">Uses of Package<br>beamline.mappers</h1>
+<h1 title="Uses of Package beamline.events" class="title">Uses of Package<br>beamline.events</h1>
 </div>
 <div class="contentContainer">
 <ul class="blockList">
 <li class="blockList">
 <table class="useSummary">
-<caption><span>Packages that use <a href="package-summary.html">beamline.mappers</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Packages that use <a href="package-summary.html">beamline.events</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Package</th>
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tbody>
 <tr class="altColor">
-<th class="colFirst" scope="row"><a href="#beamline.mappers">beamline.mappers</a></th>
+<th class="colFirst" scope="row"><a href="#beamline.events">beamline.events</a></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<th class="colFirst" scope="row"><a href="#beamline.filters">beamline.filters</a></th>
 <td class="colLast">
-<div class="block">This package contains some mappers that are available by default in the
+<div class="block">This package contains some filters that are available by default in the
  framework.</div>
 </td>
 </tr>
+<tr class="altColor">
+<th class="colFirst" scope="row"><a href="#beamline.models.algorithms">beamline.models.algorithms</a></th>
+<td class="colLast">
+<div class="block">This package contains all classes of the framework necessary to have mining
+ algorithms functioning.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<th class="colFirst" scope="row"><a href="#beamline.models.responses">beamline.models.responses</a></th>
+<td class="colLast">
+<div class="block">This package contains all classes of the framework necessary to handle the
+ responses of mining algorithms.</div>
+</td>
+</tr>
+<tr class="altColor">
+<th class="colFirst" scope="row"><a href="#beamline.sources">beamline.sources</a></th>
+<td class="colLast">
+<div class="block">This package contains all classes necessary to construct
+ <code>RichSourceFunction</code>s
+ that can be used in the rest of the project.</div>
+</td>
+</tr>
 </tbody>
 </table>
 </li>
-<li class="blockList"><a id="beamline.mappers">
+<li class="blockList"><a id="beamline.events">
 <!--   -->
 </a>
 <table class="useSummary">
-<caption><span>Classes in <a href="package-summary.html">beamline.mappers</a> used by <a href="package-summary.html">beamline.mappers</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Classes in <a href="package-summary.html">beamline.events</a> used by <a href="package-summary.html">beamline.events</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Class</th>
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tbody>
 <tr class="altColor">
-<th class="colFirst" scope="row"><a href="class-use/DirectlyFollowsRelation.html#beamline.mappers">DirectlyFollowsRelation</a></th>
-<td class="colLast">
-<div class="block">This class represents a directly follows relation as produced by
- <a href="InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.mappers"><code>InfiniteSizeDirectlyFollowsMapper</code></a>.</div>
-</td>
+<th class="colFirst" scope="row"><a href="class-use/BEvent.html#beamline.events">BEvent</a></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a id="beamline.filters">
+<!--   -->
+</a>
+<table class="useSummary">
+<caption><span>Classes in <a href="package-summary.html">beamline.events</a> used by <a href="../filters/package-summary.html">beamline.filters</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Class</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<th class="colFirst" scope="row"><a href="class-use/BEvent.html#beamline.filters">BEvent</a></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a id="beamline.models.algorithms">
+<!--   -->
+</a>
+<table class="useSummary">
+<caption><span>Classes in <a href="package-summary.html">beamline.events</a> used by <a href="../models/algorithms/package-summary.html">beamline.models.algorithms</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Class</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<th class="colFirst" scope="row"><a href="class-use/BEvent.html#beamline.models.algorithms">BEvent</a></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a id="beamline.models.responses">
+<!--   -->
+</a>
+<table class="useSummary">
+<caption><span>Classes in <a href="package-summary.html">beamline.events</a> used by <a href="../models/responses/package-summary.html">beamline.models.responses</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Class</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<th class="colFirst" scope="row"><a href="class-use/BEvent.html#beamline.models.responses">BEvent</a></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a id="beamline.sources">
+<!--   -->
+</a>
+<table class="useSummary">
+<caption><span>Classes in <a href="package-summary.html">beamline.events</a> used by <a href="../sources/package-summary.html">beamline.sources</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Class</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<th class="colFirst" scope="row"><a href="class-use/BEvent.html#beamline.sources">BEvent</a></th>
+<td class="colLast">&nbsp;</td>
 </tr>
 </tbody>
 </table>
diff --git a/beamline/exceptions/EventException.html b/beamline/exceptions/EventException.html
index 0be5052..eee49a4 100644
--- a/beamline/exceptions/EventException.html
+++ b/beamline/exceptions/EventException.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>EventException (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
diff --git a/beamline/exceptions/SourceException.html b/beamline/exceptions/SourceException.html
index 33650d8..fc5de32 100644
--- a/beamline/exceptions/SourceException.html
+++ b/beamline/exceptions/SourceException.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>SourceException (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
diff --git a/beamline/exceptions/class-use/EventException.html b/beamline/exceptions/class-use/EventException.html
index c2ae689..e75293d 100644
--- a/beamline/exceptions/class-use/EventException.html
+++ b/beamline/exceptions/class-use/EventException.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Uses of Class beamline.exceptions.EventException (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
@@ -107,10 +107,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </tr>
 <tbody>
 <tr class="altColor">
-<th class="colFirst" scope="row"><a href="#beamline.utils">beamline.utils</a></th>
-<td class="colLast">
-<div class="block">This package contains utility classes to be used throughout the framework.</div>
-</td>
+<th class="colFirst" scope="row"><a href="#beamline.events">beamline.events</a></th>
+<td class="colLast">&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -118,12 +116,12 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <li class="blockList">
 <ul class="blockList">
 <li class="blockList">
-<section role="region"><a id="beamline.utils">
+<section role="region"><a id="beamline.events">
 <!--   -->
 </a>
-<h3>Uses of <a href="../EventException.html" title="class in beamline.exceptions">EventException</a> in <a href="../../utils/package-summary.html">beamline.utils</a></h3>
+<h3>Uses of <a href="../EventException.html" title="class in beamline.exceptions">EventException</a> in <a href="../../events/package-summary.html">beamline.events</a></h3>
 <table class="useSummary">
-<caption><span>Methods in <a href="../../utils/package-summary.html">beamline.utils</a> that throw <a href="../EventException.html" title="class in beamline.exceptions">EventException</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Methods in <a href="../../events/package-summary.html">beamline.events</a> that throw <a href="../EventException.html" title="class in beamline.exceptions">EventException</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colSecond" scope="col">Method</th>
@@ -131,30 +129,33 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>static org.deckfour.xes.model.XTrace</code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">EventUtils.</span><code><span class="memberNameLink"><a href="../../utils/EventUtils.html#create(java.lang.String,java.lang.String)">create</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
+<td class="colFirst"><code>static <a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a></code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">BEvent.</span><code><span class="memberNameLink"><a href="../../events/BEvent.html#create(java.lang.String,java.lang.String,java.lang.String)">create</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;processName,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
       <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId)</code></th>
 <td class="colLast">
 <div class="block">Creates a new <code>XTrace</code> referring to one event.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>static org.deckfour.xes.model.XTrace</code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">EventUtils.</span><code><span class="memberNameLink"><a href="../../utils/EventUtils.html#create(java.lang.String,java.lang.String,java.util.Date)">create</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
+<td class="colFirst"><code>static <a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a></code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">BEvent.</span><code><span class="memberNameLink"><a href="../../events/BEvent.html#create(java.lang.String,java.lang.String,java.lang.String,java.util.Date)">create</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;processName,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
       <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId,
       <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Date.html?is-external=true" title="class or interface in java.util" class="externalLink">Date</a>&nbsp;time)</code></th>
 <td class="colLast">
-<div class="block">Creates a new <code>XTrace</code> referring to one event</div>
+<div class="block">Creates a new <a href="../../events/BEvent.html" title="class in beamline.events"><code>BEvent</code></a> referring to one event</div>
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>static org.deckfour.xes.model.XTrace</code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">EventUtils.</span><code><span class="memberNameLink"><a href="../../utils/EventUtils.html#create(java.lang.String,java.lang.String,java.util.Date,java.util.Collection)">create</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
+<td class="colFirst"><code>static <a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a></code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">BEvent.</span><code><span class="memberNameLink"><a href="../../events/BEvent.html#create(java.lang.String,java.lang.String,java.lang.String,java.util.Date,java.util.Collection)">create</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;processName,
+      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
       <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId,
       <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Date.html?is-external=true" title="class or interface in java.util" class="externalLink">Date</a>&nbsp;time,
       <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;org.apache.commons.lang3.tuple.Pair&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&gt;&nbsp;eventAttributes)</code></th>
 <td class="colLast">
-<div class="block">Creates a new <code>XTrace</code> referring to one event</div>
+<div class="block">Creates a new <a href="../../events/BEvent.html" title="class in beamline.events"><code>BEvent</code></a> referring to one event</div>
 </td>
 </tr>
 </tbody>
diff --git a/beamline/exceptions/class-use/SourceException.html b/beamline/exceptions/class-use/SourceException.html
index 12e1885..91c5354 100644
--- a/beamline/exceptions/class-use/SourceException.html
+++ b/beamline/exceptions/class-use/SourceException.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Uses of Class beamline.exceptions.SourceException (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
@@ -96,73 +96,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <div class="header">
 <h2 title="Uses of Class beamline.exceptions.SourceException" class="title">Uses of Class<br>beamline.exceptions.SourceException</h2>
 </div>
-<div class="classUseContainer">
-<ul class="blockList">
-<li class="blockList">
-<table class="useSummary">
-<caption><span>Packages that use <a href="../SourceException.html" title="class in beamline.exceptions">SourceException</a></span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Package</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tbody>
-<tr class="altColor">
-<th class="colFirst" scope="row"><a href="#beamline.sources">beamline.sources</a></th>
-<td class="colLast">
-<div class="block">This package contains all classes necessary to construct
- <code>Observable</code>s that can be used in the rest of
- the project.</div>
-</td>
-</tr>
-</tbody>
-</table>
-</li>
-<li class="blockList">
-<ul class="blockList">
-<li class="blockList">
-<section role="region"><a id="beamline.sources">
-<!--   -->
-</a>
-<h3>Uses of <a href="../SourceException.html" title="class in beamline.exceptions">SourceException</a> in <a href="../../sources/package-summary.html">beamline.sources</a></h3>
-<table class="useSummary">
-<caption><span>Methods in <a href="../../sources/package-summary.html">beamline.sources</a> that throw <a href="../SourceException.html" title="class in beamline.exceptions">SourceException</a></span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colSecond" scope="col">Method</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tbody>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">CSVLogSource.</span><code><span class="memberNameLink"><a href="../../sources/CSVLogSource.html#prepare()">prepare</a></span>()</code></th>
-<td class="colLast">&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">MQTTXesSource.</span><code><span class="memberNameLink"><a href="../../sources/MQTTXesSource.html#prepare()">prepare</a></span>()</code></th>
-<td class="colLast">&nbsp;</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">Source.</span><code><span class="memberNameLink"><a href="../../sources/Source.html#prepare()">prepare</a></span>()</code></th>
-<td class="colLast">
-<div class="block">This method is supposed to be called before the <a href="../../sources/Source.html#getObservable()"><code>Source.getObservable()</code></a>
- one: it is in charge of preparing the source to be processed.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">XesLogSource.</span><code><span class="memberNameLink"><a href="../../sources/XesLogSource.html#prepare()">prepare</a></span>()</code></th>
-<td class="colLast">&nbsp;</td>
-</tr>
-</tbody>
-</table>
-</section>
-</li>
-</ul>
-</li>
-</ul>
-</div>
+<div class="classUseContainer">No usage of beamline.exceptions.SourceException</div>
 </main>
 <footer role="contentinfo">
 <nav role="navigation">
diff --git a/beamline/exceptions/package-summary.html b/beamline/exceptions/package-summary.html
index 2817091..139a80c 100644
--- a/beamline/exceptions/package-summary.html
+++ b/beamline/exceptions/package-summary.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>beamline.exceptions (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
diff --git a/beamline/exceptions/package-tree.html b/beamline/exceptions/package-tree.html
index aa6abea..6fefc4c 100644
--- a/beamline/exceptions/package-tree.html
+++ b/beamline/exceptions/package-tree.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>beamline.exceptions Class Hierarchy (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
diff --git a/beamline/exceptions/package-use.html b/beamline/exceptions/package-use.html
index 03bc0fd..d8a2504 100644
--- a/beamline/exceptions/package-use.html
+++ b/beamline/exceptions/package-use.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Uses of Package beamline.exceptions (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -107,51 +107,24 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </tr>
 <tbody>
 <tr class="altColor">
-<th class="colFirst" scope="row"><a href="#beamline.sources">beamline.sources</a></th>
-<td class="colLast">
-<div class="block">This package contains all classes necessary to construct
- <code>Observable</code>s that can be used in the rest of
- the project.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<th class="colFirst" scope="row"><a href="#beamline.utils">beamline.utils</a></th>
-<td class="colLast">
-<div class="block">This package contains utility classes to be used throughout the framework.</div>
-</td>
-</tr>
-</tbody>
-</table>
-</li>
-<li class="blockList"><a id="beamline.sources">
-<!--   -->
-</a>
-<table class="useSummary">
-<caption><span>Classes in <a href="package-summary.html">beamline.exceptions</a> used by <a href="../sources/package-summary.html">beamline.sources</a></span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Class</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tbody>
-<tr class="altColor">
-<th class="colFirst" scope="row"><a href="class-use/SourceException.html#beamline.sources">SourceException</a></th>
+<th class="colFirst" scope="row"><a href="#beamline.events">beamline.events</a></th>
 <td class="colLast">&nbsp;</td>
 </tr>
 </tbody>
 </table>
 </li>
-<li class="blockList"><a id="beamline.utils">
+<li class="blockList"><a id="beamline.events">
 <!--   -->
 </a>
 <table class="useSummary">
-<caption><span>Classes in <a href="package-summary.html">beamline.exceptions</a> used by <a href="../utils/package-summary.html">beamline.utils</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Classes in <a href="package-summary.html">beamline.exceptions</a> used by <a href="../events/package-summary.html">beamline.events</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Class</th>
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tbody>
 <tr class="altColor">
-<th class="colFirst" scope="row"><a href="class-use/EventException.html#beamline.utils">EventException</a></th>
+<th class="colFirst" scope="row"><a href="class-use/EventException.html#beamline.events">EventException</a></th>
 <td class="colLast">&nbsp;</td>
 </tr>
 </tbody>
diff --git a/beamline/filters/ExcludeActivitiesFilter.html b/beamline/filters/ExcludeActivitiesFilter.html
index e62b44c..7484837 100644
--- a/beamline/filters/ExcludeActivitiesFilter.html
+++ b/beamline/filters/ExcludeActivitiesFilter.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>ExcludeActivitiesFilter (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -118,7 +118,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
 <li>
 <ul class="inheritance">
-<li><a href="ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters">beamline.filters.ExcludeOnEventAttributeEqualityFilter</a>&lt;org.deckfour.xes.model.XAttributeLiteral&gt;</li>
+<li><a href="ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters">beamline.filters.ExcludeOnEventAttributeEqualityFilter</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</li>
 <li>
 <ul class="inheritance">
 <li>beamline.filters.ExcludeActivitiesFilter</li>
@@ -132,16 +132,18 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <li class="blockList">
 <dl>
 <dt>All Implemented Interfaces:</dt>
-<dd><code>io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XTrace&gt;</code></dd>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code>, <code>org.apache.flink.api.common.functions.FilterFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</code>, <code>org.apache.flink.api.common.functions.Function</code></dd>
 </dl>
 <hr>
 <pre>public class <span class="typeNameLabel">ExcludeActivitiesFilter</span>
-extends <a href="ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnEventAttributeEqualityFilter</a>&lt;org.deckfour.xes.model.XAttributeLiteral&gt;</pre>
+extends <a href="ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnEventAttributeEqualityFilter</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</pre>
 <div class="block">A specific instance of the <a href="ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters"><code>ExcludeOnEventAttributeEqualityFilter</code></a> that
  considers the name of the activity as attribute to filter.</div>
 <dl>
 <dt><span class="simpleTagLabel">Author:</span></dt>
 <dd>Andrea Burattin</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../serialized-form.html#beamline.filters.ExcludeActivitiesFilter">Serialized Form</a></dd>
 </dl>
 </li>
 </ul>
@@ -184,7 +186,7 @@ extends <a href="ExcludeOnEventAttributeEqualityFilter.html" title="class in bea
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;beamline.filters.<a href="ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnEventAttributeEqualityFilter</a></h3>
-<code><a href="ExcludeOnEventAttributeEqualityFilter.html#addValue(T)">addValue</a>, <a href="ExcludeOnEventAttributeEqualityFilter.html#test(org.deckfour.xes.model.XTrace)">test</a></code></li>
+<code><a href="ExcludeOnEventAttributeEqualityFilter.html#addValue(T)">addValue</a>, <a href="ExcludeOnEventAttributeEqualityFilter.html#filter(beamline.events.BEvent)">filter</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
diff --git a/beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html b/beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html
index 8dd1daf..af35c44 100644
--- a/beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html
+++ b/beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>ExcludeOnCaseAttributeEqualityFilter (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -117,7 +117,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <main role="main">
 <div class="header">
 <div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.filters</a></div>
-<h2 title="Class ExcludeOnCaseAttributeEqualityFilter" class="title">Class ExcludeOnCaseAttributeEqualityFilter&lt;T extends org.deckfour.xes.model.XAttribute&gt;</h2>
+<h2 title="Class ExcludeOnCaseAttributeEqualityFilter" class="title">Class ExcludeOnCaseAttributeEqualityFilter&lt;T extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
@@ -137,12 +137,12 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </dl>
 <dl>
 <dt>All Implemented Interfaces:</dt>
-<dd><code>io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XTrace&gt;</code></dd>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code>, <code>org.apache.flink.api.common.functions.FilterFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</code>, <code>org.apache.flink.api.common.functions.Function</code></dd>
 </dl>
 <hr>
-<pre>public class <span class="typeNameLabel">ExcludeOnCaseAttributeEqualityFilter&lt;T extends org.deckfour.xes.model.XAttribute&gt;</span>
+<pre>public class <span class="typeNameLabel">ExcludeOnCaseAttributeEqualityFilter&lt;T extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</span>
 extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
-implements io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XTrace&gt;</pre>
+implements org.apache.flink.api.common.functions.FilterFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</pre>
 <div class="block">This filter excludes events based on the equality of a certain trace
  attribute to a given set of values. Values are considered in disjunction
  (i.e., it is enough that the attribute is equal to one of the values to
@@ -150,6 +150,8 @@ implements io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XT
 <dl>
 <dt><span class="simpleTagLabel">Author:</span></dt>
 <dd>Andrea Burattin</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../serialized-form.html#beamline.filters.ExcludeOnCaseAttributeEqualityFilter">Serialized Form</a></dd>
 </dl>
 </li>
 </ul>
@@ -197,7 +199,7 @@ implements io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XT
 </tr>
 <tr id="i0" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#test(org.deckfour.xes.model.XTrace)">test</a></span>&#8203;(@NonNull org.deckfour.xes.model.XTrace&nbsp;t)</code></th>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#filter(beamline.events.BEvent)">filter</a></span>&#8203;(<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;t)</code></th>
 <td class="colLast">&nbsp;</td>
 </tr>
 </table>
@@ -224,7 +226,7 @@ implements io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XT
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a id="&lt;init&gt;(java.lang.String,org.deckfour.xes.model.XAttribute[])">
+<a id="&lt;init&gt;(java.lang.String,java.io.Serializable[])">
 <!--   -->
 </a><a id="&lt;init&gt;(java.lang.String,T...)">
 <!--   -->
@@ -253,20 +255,16 @@ public&nbsp;ExcludeOnCaseAttributeEqualityFilter&#8203;(<a href="https://docs.or
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a id="test(org.deckfour.xes.model.XTrace)">
+<a id="filter(beamline.events.BEvent)">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>test</h4>
-<pre class="methodSignature">public&nbsp;boolean&nbsp;test&#8203;(@NonNull
-                    @NonNull org.deckfour.xes.model.XTrace&nbsp;t)
-             throws <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Throwable</a></pre>
+<h4>filter</h4>
+<pre class="methodSignature">public&nbsp;boolean&nbsp;filter&#8203;(<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;t)</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code>test</code>&nbsp;in interface&nbsp;<code>io.reactivex.rxjava3.functions.Predicate&lt;<a href="ExcludeOnCaseAttributeEqualityFilter.html" title="type parameter in ExcludeOnCaseAttributeEqualityFilter">T</a> extends org.deckfour.xes.model.XAttribute&gt;</code></dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Throwable</a></code></dd>
+<dd><code>filter</code>&nbsp;in interface&nbsp;<code>org.apache.flink.api.common.functions.FilterFunction&lt;<a href="ExcludeOnCaseAttributeEqualityFilter.html" title="type parameter in ExcludeOnCaseAttributeEqualityFilter">T</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</code></dd>
 </dl>
 </li>
 </ul>
diff --git a/beamline/filters/ExcludeOnEventAttributeEqualityFilter.html b/beamline/filters/ExcludeOnEventAttributeEqualityFilter.html
index 07a887e..e0e9eda 100644
--- a/beamline/filters/ExcludeOnEventAttributeEqualityFilter.html
+++ b/beamline/filters/ExcludeOnEventAttributeEqualityFilter.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>ExcludeOnEventAttributeEqualityFilter (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -117,7 +117,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <main role="main">
 <div class="header">
 <div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.filters</a></div>
-<h2 title="Class ExcludeOnEventAttributeEqualityFilter" class="title">Class ExcludeOnEventAttributeEqualityFilter&lt;T extends org.deckfour.xes.model.XAttribute&gt;</h2>
+<h2 title="Class ExcludeOnEventAttributeEqualityFilter" class="title">Class ExcludeOnEventAttributeEqualityFilter&lt;T extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
@@ -137,16 +137,16 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </dl>
 <dl>
 <dt>All Implemented Interfaces:</dt>
-<dd><code>io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XTrace&gt;</code></dd>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code>, <code>org.apache.flink.api.common.functions.FilterFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</code>, <code>org.apache.flink.api.common.functions.Function</code></dd>
 </dl>
 <dl>
 <dt>Direct Known Subclasses:</dt>
 <dd><code><a href="ExcludeActivitiesFilter.html" title="class in beamline.filters">ExcludeActivitiesFilter</a></code></dd>
 </dl>
 <hr>
-<pre>public class <span class="typeNameLabel">ExcludeOnEventAttributeEqualityFilter&lt;T extends org.deckfour.xes.model.XAttribute&gt;</span>
+<pre>public class <span class="typeNameLabel">ExcludeOnEventAttributeEqualityFilter&lt;T extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</span>
 extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
-implements io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XTrace&gt;</pre>
+implements org.apache.flink.api.common.functions.FilterFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</pre>
 <div class="block">This filter excludes events based on the equality of a certain event
  attribute to a given set of values. Values are considered in disjunction
  (i.e., it is enough that the attribute is equal to one of the values to
@@ -154,6 +154,8 @@ implements io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XT
 <dl>
 <dt><span class="simpleTagLabel">Author:</span></dt>
 <dd>Andrea Burattin</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../serialized-form.html#beamline.filters.ExcludeOnEventAttributeEqualityFilter">Serialized Form</a></dd>
 </dl>
 </li>
 </ul>
@@ -208,7 +210,7 @@ implements io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XT
 </tr>
 <tr id="i1" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#test(org.deckfour.xes.model.XTrace)">test</a></span>&#8203;(@NonNull org.deckfour.xes.model.XTrace&nbsp;t)</code></th>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#filter(beamline.events.BEvent)">filter</a></span>&#8203;(<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;t)</code></th>
 <td class="colLast">&nbsp;</td>
 </tr>
 </table>
@@ -235,7 +237,7 @@ implements io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XT
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a id="&lt;init&gt;(java.lang.String,org.deckfour.xes.model.XAttribute[])">
+<a id="&lt;init&gt;(java.lang.String,java.io.Serializable[])">
 <!--   -->
 </a><a id="&lt;init&gt;(java.lang.String,T...)">
 <!--   -->
@@ -264,7 +266,7 @@ public&nbsp;ExcludeOnEventAttributeEqualityFilter&#8203;(<a href="https://docs.o
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a id="addValue(org.deckfour.xes.model.XAttribute)">
+<a id="addValue(java.io.Serializable)">
 <!--   -->
 </a><a id="addValue(T)">
 <!--   -->
@@ -280,20 +282,16 @@ public&nbsp;ExcludeOnEventAttributeEqualityFilter&#8203;(<a href="https://docs.o
 </dl>
 </li>
 </ul>
-<a id="test(org.deckfour.xes.model.XTrace)">
+<a id="filter(beamline.events.BEvent)">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>test</h4>
-<pre class="methodSignature">public&nbsp;boolean&nbsp;test&#8203;(@NonNull
-                    @NonNull org.deckfour.xes.model.XTrace&nbsp;t)
-             throws <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Throwable</a></pre>
+<h4>filter</h4>
+<pre class="methodSignature">public&nbsp;boolean&nbsp;filter&#8203;(<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;t)</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code>test</code>&nbsp;in interface&nbsp;<code>io.reactivex.rxjava3.functions.Predicate&lt;<a href="ExcludeOnEventAttributeEqualityFilter.html" title="type parameter in ExcludeOnEventAttributeEqualityFilter">T</a> extends org.deckfour.xes.model.XAttribute&gt;</code></dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Throwable</a></code></dd>
+<dd><code>filter</code>&nbsp;in interface&nbsp;<code>org.apache.flink.api.common.functions.FilterFunction&lt;<a href="ExcludeOnEventAttributeEqualityFilter.html" title="type parameter in ExcludeOnEventAttributeEqualityFilter">T</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</code></dd>
 </dl>
 </li>
 </ul>
diff --git a/beamline/filters/RetainActivitiesFilter.html b/beamline/filters/RetainActivitiesFilter.html
index 794d377..bf29ef4 100644
--- a/beamline/filters/RetainActivitiesFilter.html
+++ b/beamline/filters/RetainActivitiesFilter.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>RetainActivitiesFilter (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -118,7 +118,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
 <li>
 <ul class="inheritance">
-<li><a href="RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters">beamline.filters.RetainOnEventAttributeEqualityFilter</a>&lt;org.deckfour.xes.model.XAttributeLiteral&gt;</li>
+<li><a href="RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters">beamline.filters.RetainOnEventAttributeEqualityFilter</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</li>
 <li>
 <ul class="inheritance">
 <li>beamline.filters.RetainActivitiesFilter</li>
@@ -132,16 +132,18 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <li class="blockList">
 <dl>
 <dt>All Implemented Interfaces:</dt>
-<dd><code>io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XTrace&gt;</code></dd>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code>, <code>org.apache.flink.api.common.functions.FilterFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</code>, <code>org.apache.flink.api.common.functions.Function</code></dd>
 </dl>
 <hr>
 <pre>public class <span class="typeNameLabel">RetainActivitiesFilter</span>
-extends <a href="RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters">RetainOnEventAttributeEqualityFilter</a>&lt;org.deckfour.xes.model.XAttributeLiteral&gt;</pre>
+extends <a href="RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters">RetainOnEventAttributeEqualityFilter</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</pre>
 <div class="block">A specific instance of the <a href="RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters"><code>RetainOnEventAttributeEqualityFilter</code></a> that
  considers the name of the activity as attribute to filter.</div>
 <dl>
 <dt><span class="simpleTagLabel">Author:</span></dt>
 <dd>Andrea Burattin</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../serialized-form.html#beamline.filters.RetainActivitiesFilter">Serialized Form</a></dd>
 </dl>
 </li>
 </ul>
@@ -184,7 +186,7 @@ extends <a href="RetainOnEventAttributeEqualityFilter.html" title="class in beam
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;beamline.filters.<a href="RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters">RetainOnEventAttributeEqualityFilter</a></h3>
-<code><a href="RetainOnEventAttributeEqualityFilter.html#addValue(T)">addValue</a>, <a href="RetainOnEventAttributeEqualityFilter.html#test(org.deckfour.xes.model.XTrace)">test</a></code></li>
+<code><a href="RetainOnEventAttributeEqualityFilter.html#addValue(T)">addValue</a>, <a href="RetainOnEventAttributeEqualityFilter.html#filter(beamline.events.BEvent)">filter</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
diff --git a/beamline/filters/RetainOnCaseAttributeEqualityFilter.html b/beamline/filters/RetainOnCaseAttributeEqualityFilter.html
index c5e31b5..4ab5f32 100644
--- a/beamline/filters/RetainOnCaseAttributeEqualityFilter.html
+++ b/beamline/filters/RetainOnCaseAttributeEqualityFilter.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>RetainOnCaseAttributeEqualityFilter (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -117,7 +117,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <main role="main">
 <div class="header">
 <div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.filters</a></div>
-<h2 title="Class RetainOnCaseAttributeEqualityFilter" class="title">Class RetainOnCaseAttributeEqualityFilter&lt;T extends org.deckfour.xes.model.XAttribute&gt;</h2>
+<h2 title="Class RetainOnCaseAttributeEqualityFilter" class="title">Class RetainOnCaseAttributeEqualityFilter&lt;T extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
@@ -137,12 +137,12 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </dl>
 <dl>
 <dt>All Implemented Interfaces:</dt>
-<dd><code>io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XTrace&gt;</code></dd>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code>, <code>org.apache.flink.api.common.functions.FilterFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</code>, <code>org.apache.flink.api.common.functions.Function</code></dd>
 </dl>
 <hr>
-<pre>public class <span class="typeNameLabel">RetainOnCaseAttributeEqualityFilter&lt;T extends org.deckfour.xes.model.XAttribute&gt;</span>
+<pre>public class <span class="typeNameLabel">RetainOnCaseAttributeEqualityFilter&lt;T extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</span>
 extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
-implements io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XTrace&gt;</pre>
+implements org.apache.flink.api.common.functions.FilterFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</pre>
 <div class="block">This filter retains events based on the equality of a certain trace
  attribute to a given set of values. Values are considered in disjunction
  (i.e., it is enough that the attribute is equal to one of the values to
@@ -150,6 +150,8 @@ implements io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XT
 <dl>
 <dt><span class="simpleTagLabel">Author:</span></dt>
 <dd>Andrea Burattin</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../serialized-form.html#beamline.filters.RetainOnCaseAttributeEqualityFilter">Serialized Form</a></dd>
 </dl>
 </li>
 </ul>
@@ -197,7 +199,7 @@ implements io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XT
 </tr>
 <tr id="i0" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#test(org.deckfour.xes.model.XTrace)">test</a></span>&#8203;(@NonNull org.deckfour.xes.model.XTrace&nbsp;t)</code></th>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#filter(beamline.events.BEvent)">filter</a></span>&#8203;(<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;t)</code></th>
 <td class="colLast">&nbsp;</td>
 </tr>
 </table>
@@ -224,7 +226,7 @@ implements io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XT
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a id="&lt;init&gt;(java.lang.String,org.deckfour.xes.model.XAttribute[])">
+<a id="&lt;init&gt;(java.lang.String,java.io.Serializable[])">
 <!--   -->
 </a><a id="&lt;init&gt;(java.lang.String,T...)">
 <!--   -->
@@ -253,20 +255,16 @@ public&nbsp;RetainOnCaseAttributeEqualityFilter&#8203;(<a href="https://docs.ora
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a id="test(org.deckfour.xes.model.XTrace)">
+<a id="filter(beamline.events.BEvent)">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>test</h4>
-<pre class="methodSignature">public&nbsp;boolean&nbsp;test&#8203;(@NonNull
-                    @NonNull org.deckfour.xes.model.XTrace&nbsp;t)
-             throws <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Throwable</a></pre>
+<h4>filter</h4>
+<pre class="methodSignature">public&nbsp;boolean&nbsp;filter&#8203;(<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;t)</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code>test</code>&nbsp;in interface&nbsp;<code>io.reactivex.rxjava3.functions.Predicate&lt;<a href="RetainOnCaseAttributeEqualityFilter.html" title="type parameter in RetainOnCaseAttributeEqualityFilter">T</a> extends org.deckfour.xes.model.XAttribute&gt;</code></dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Throwable</a></code></dd>
+<dd><code>filter</code>&nbsp;in interface&nbsp;<code>org.apache.flink.api.common.functions.FilterFunction&lt;<a href="RetainOnCaseAttributeEqualityFilter.html" title="type parameter in RetainOnCaseAttributeEqualityFilter">T</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</code></dd>
 </dl>
 </li>
 </ul>
diff --git a/beamline/filters/RetainOnEventAttributeEqualityFilter.html b/beamline/filters/RetainOnEventAttributeEqualityFilter.html
index e2eadaf..5e82995 100644
--- a/beamline/filters/RetainOnEventAttributeEqualityFilter.html
+++ b/beamline/filters/RetainOnEventAttributeEqualityFilter.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>RetainOnEventAttributeEqualityFilter (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -117,7 +117,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <main role="main">
 <div class="header">
 <div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.filters</a></div>
-<h2 title="Class RetainOnEventAttributeEqualityFilter" class="title">Class RetainOnEventAttributeEqualityFilter&lt;T extends org.deckfour.xes.model.XAttribute&gt;</h2>
+<h2 title="Class RetainOnEventAttributeEqualityFilter" class="title">Class RetainOnEventAttributeEqualityFilter&lt;T extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
@@ -137,16 +137,16 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </dl>
 <dl>
 <dt>All Implemented Interfaces:</dt>
-<dd><code>io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XTrace&gt;</code></dd>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code>, <code>org.apache.flink.api.common.functions.FilterFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</code>, <code>org.apache.flink.api.common.functions.Function</code></dd>
 </dl>
 <dl>
 <dt>Direct Known Subclasses:</dt>
 <dd><code><a href="RetainActivitiesFilter.html" title="class in beamline.filters">RetainActivitiesFilter</a></code></dd>
 </dl>
 <hr>
-<pre>public class <span class="typeNameLabel">RetainOnEventAttributeEqualityFilter&lt;T extends org.deckfour.xes.model.XAttribute&gt;</span>
+<pre>public class <span class="typeNameLabel">RetainOnEventAttributeEqualityFilter&lt;T extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</span>
 extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
-implements io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XTrace&gt;</pre>
+implements org.apache.flink.api.common.functions.FilterFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</pre>
 <div class="block">This filter retains events based on the equality of a certain event
  attribute to a given set of values. Values are considered in disjunction
  (i.e., it is enough that the attribute is equal to one of the values to
@@ -154,6 +154,8 @@ implements io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XT
 <dl>
 <dt><span class="simpleTagLabel">Author:</span></dt>
 <dd>Andrea Burattin</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../serialized-form.html#beamline.filters.RetainOnEventAttributeEqualityFilter">Serialized Form</a></dd>
 </dl>
 </li>
 </ul>
@@ -208,7 +210,7 @@ implements io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XT
 </tr>
 <tr id="i1" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#test(org.deckfour.xes.model.XTrace)">test</a></span>&#8203;(@NonNull org.deckfour.xes.model.XTrace&nbsp;t)</code></th>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#filter(beamline.events.BEvent)">filter</a></span>&#8203;(<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;event)</code></th>
 <td class="colLast">&nbsp;</td>
 </tr>
 </table>
@@ -235,7 +237,7 @@ implements io.reactivex.rxjava3.functions.Predicate&lt;org.deckfour.xes.model.XT
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a id="&lt;init&gt;(java.lang.String,org.deckfour.xes.model.XAttribute[])">
+<a id="&lt;init&gt;(java.lang.String,java.io.Serializable[])">
 <!--   -->
 </a><a id="&lt;init&gt;(java.lang.String,T...)">
 <!--   -->
@@ -264,7 +266,7 @@ public&nbsp;RetainOnEventAttributeEqualityFilter&#8203;(<a href="https://docs.or
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a id="addValue(org.deckfour.xes.model.XAttribute)">
+<a id="addValue(java.io.Serializable)">
 <!--   -->
 </a><a id="addValue(T)">
 <!--   -->
@@ -280,20 +282,16 @@ public&nbsp;RetainOnEventAttributeEqualityFilter&#8203;(<a href="https://docs.or
 </dl>
 </li>
 </ul>
-<a id="test(org.deckfour.xes.model.XTrace)">
+<a id="filter(beamline.events.BEvent)">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>test</h4>
-<pre class="methodSignature">public&nbsp;boolean&nbsp;test&#8203;(@NonNull
-                    @NonNull org.deckfour.xes.model.XTrace&nbsp;t)
-             throws <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Throwable</a></pre>
+<h4>filter</h4>
+<pre class="methodSignature">public&nbsp;boolean&nbsp;filter&#8203;(<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;event)</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code>test</code>&nbsp;in interface&nbsp;<code>io.reactivex.rxjava3.functions.Predicate&lt;<a href="RetainOnEventAttributeEqualityFilter.html" title="type parameter in RetainOnEventAttributeEqualityFilter">T</a> extends org.deckfour.xes.model.XAttribute&gt;</code></dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Throwable</a></code></dd>
+<dd><code>filter</code>&nbsp;in interface&nbsp;<code>org.apache.flink.api.common.functions.FilterFunction&lt;<a href="RetainOnEventAttributeEqualityFilter.html" title="type parameter in RetainOnEventAttributeEqualityFilter">T</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</code></dd>
 </dl>
 </li>
 </ul>
diff --git a/beamline/filters/class-use/ExcludeActivitiesFilter.html b/beamline/filters/class-use/ExcludeActivitiesFilter.html
index 202d104..d51b41e 100644
--- a/beamline/filters/class-use/ExcludeActivitiesFilter.html
+++ b/beamline/filters/class-use/ExcludeActivitiesFilter.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Uses of Class beamline.filters.ExcludeActivitiesFilter (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
diff --git a/beamline/filters/class-use/ExcludeOnCaseAttributeEqualityFilter.html b/beamline/filters/class-use/ExcludeOnCaseAttributeEqualityFilter.html
index e4f038c..d5ca536 100644
--- a/beamline/filters/class-use/ExcludeOnCaseAttributeEqualityFilter.html
+++ b/beamline/filters/class-use/ExcludeOnCaseAttributeEqualityFilter.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Uses of Class beamline.filters.ExcludeOnCaseAttributeEqualityFilter (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
diff --git a/beamline/filters/class-use/ExcludeOnEventAttributeEqualityFilter.html b/beamline/filters/class-use/ExcludeOnEventAttributeEqualityFilter.html
index 4cb2e0f..fdffc75 100644
--- a/beamline/filters/class-use/ExcludeOnEventAttributeEqualityFilter.html
+++ b/beamline/filters/class-use/ExcludeOnEventAttributeEqualityFilter.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Uses of Class beamline.filters.ExcludeOnEventAttributeEqualityFilter (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
diff --git a/beamline/filters/class-use/RetainActivitiesFilter.html b/beamline/filters/class-use/RetainActivitiesFilter.html
index 16e5cef..8581d6a 100644
--- a/beamline/filters/class-use/RetainActivitiesFilter.html
+++ b/beamline/filters/class-use/RetainActivitiesFilter.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Uses of Class beamline.filters.RetainActivitiesFilter (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
diff --git a/beamline/filters/class-use/RetainOnCaseAttributeEqualityFilter.html b/beamline/filters/class-use/RetainOnCaseAttributeEqualityFilter.html
index 3c1eac0..ebe3ad9 100644
--- a/beamline/filters/class-use/RetainOnCaseAttributeEqualityFilter.html
+++ b/beamline/filters/class-use/RetainOnCaseAttributeEqualityFilter.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Uses of Class beamline.filters.RetainOnCaseAttributeEqualityFilter (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
diff --git a/beamline/filters/class-use/RetainOnEventAttributeEqualityFilter.html b/beamline/filters/class-use/RetainOnEventAttributeEqualityFilter.html
index 9171bc4..f06d59c 100644
--- a/beamline/filters/class-use/RetainOnEventAttributeEqualityFilter.html
+++ b/beamline/filters/class-use/RetainOnEventAttributeEqualityFilter.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Uses of Class beamline.filters.RetainOnEventAttributeEqualityFilter (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
diff --git a/beamline/filters/package-summary.html b/beamline/filters/package-summary.html
index 7867827..2fa8bbd 100644
--- a/beamline/filters/package-summary.html
+++ b/beamline/filters/package-summary.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>beamline.filters (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -120,14 +120,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </td>
 </tr>
 <tr class="rowColor">
-<th class="colFirst" scope="row"><a href="ExcludeOnCaseAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnCaseAttributeEqualityFilter</a>&lt;T extends org.deckfour.xes.model.XAttribute&gt;</th>
+<th class="colFirst" scope="row"><a href="ExcludeOnCaseAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnCaseAttributeEqualityFilter</a>&lt;T extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</th>
 <td class="colLast">
 <div class="block">This filter excludes events based on the equality of a certain trace
  attribute to a given set of values.</div>
 </td>
 </tr>
 <tr class="altColor">
-<th class="colFirst" scope="row"><a href="ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnEventAttributeEqualityFilter</a>&lt;T extends org.deckfour.xes.model.XAttribute&gt;</th>
+<th class="colFirst" scope="row"><a href="ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnEventAttributeEqualityFilter</a>&lt;T extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</th>
 <td class="colLast">
 <div class="block">This filter excludes events based on the equality of a certain event
  attribute to a given set of values.</div>
@@ -141,14 +141,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </td>
 </tr>
 <tr class="altColor">
-<th class="colFirst" scope="row"><a href="RetainOnCaseAttributeEqualityFilter.html" title="class in beamline.filters">RetainOnCaseAttributeEqualityFilter</a>&lt;T extends org.deckfour.xes.model.XAttribute&gt;</th>
+<th class="colFirst" scope="row"><a href="RetainOnCaseAttributeEqualityFilter.html" title="class in beamline.filters">RetainOnCaseAttributeEqualityFilter</a>&lt;T extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</th>
 <td class="colLast">
 <div class="block">This filter retains events based on the equality of a certain trace
  attribute to a given set of values.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<th class="colFirst" scope="row"><a href="RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters">RetainOnEventAttributeEqualityFilter</a>&lt;T extends org.deckfour.xes.model.XAttribute&gt;</th>
+<th class="colFirst" scope="row"><a href="RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters">RetainOnEventAttributeEqualityFilter</a>&lt;T extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt;</th>
 <td class="colLast">
 <div class="block">This filter retains events based on the equality of a certain event
  attribute to a given set of values.</div>
diff --git a/beamline/filters/package-tree.html b/beamline/filters/package-tree.html
index 720dd99..da2bc84 100644
--- a/beamline/filters/package-tree.html
+++ b/beamline/filters/package-tree.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>beamline.filters Class Hierarchy (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -106,14 +106,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul>
 <li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink"><span class="typeNameLink">Object</span></a>
 <ul>
-<li class="circle">beamline.filters.<a href="ExcludeOnCaseAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">ExcludeOnCaseAttributeEqualityFilter</span></a>&lt;T&gt; (implements io.reactivex.rxjava3.functions.Predicate&lt;T&gt;)</li>
-<li class="circle">beamline.filters.<a href="ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">ExcludeOnEventAttributeEqualityFilter</span></a>&lt;T&gt; (implements io.reactivex.rxjava3.functions.Predicate&lt;T&gt;)
+<li class="circle">beamline.filters.<a href="ExcludeOnCaseAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">ExcludeOnCaseAttributeEqualityFilter</span></a>&lt;T&gt; (implements org.apache.flink.api.common.functions.FilterFunction&lt;T&gt;)</li>
+<li class="circle">beamline.filters.<a href="ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">ExcludeOnEventAttributeEqualityFilter</span></a>&lt;T&gt; (implements org.apache.flink.api.common.functions.FilterFunction&lt;T&gt;)
 <ul>
 <li class="circle">beamline.filters.<a href="ExcludeActivitiesFilter.html" title="class in beamline.filters"><span class="typeNameLink">ExcludeActivitiesFilter</span></a></li>
 </ul>
 </li>
-<li class="circle">beamline.filters.<a href="RetainOnCaseAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">RetainOnCaseAttributeEqualityFilter</span></a>&lt;T&gt; (implements io.reactivex.rxjava3.functions.Predicate&lt;T&gt;)</li>
-<li class="circle">beamline.filters.<a href="RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">RetainOnEventAttributeEqualityFilter</span></a>&lt;T&gt; (implements io.reactivex.rxjava3.functions.Predicate&lt;T&gt;)
+<li class="circle">beamline.filters.<a href="RetainOnCaseAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">RetainOnCaseAttributeEqualityFilter</span></a>&lt;T&gt; (implements org.apache.flink.api.common.functions.FilterFunction&lt;T&gt;)</li>
+<li class="circle">beamline.filters.<a href="RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">RetainOnEventAttributeEqualityFilter</span></a>&lt;T&gt; (implements org.apache.flink.api.common.functions.FilterFunction&lt;T&gt;)
 <ul>
 <li class="circle">beamline.filters.<a href="RetainActivitiesFilter.html" title="class in beamline.filters"><span class="typeNameLink">RetainActivitiesFilter</span></a></li>
 </ul>
diff --git a/beamline/filters/package-use.html b/beamline/filters/package-use.html
index 1843fe8..d806489 100644
--- a/beamline/filters/package-use.html
+++ b/beamline/filters/package-use.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Uses of Package beamline.filters (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
diff --git a/beamline/mappers/class-use/DirectlyFollowsRelation.html b/beamline/mappers/class-use/DirectlyFollowsRelation.html
deleted file mode 100644
index 615e83f..0000000
--- a/beamline/mappers/class-use/DirectlyFollowsRelation.html
+++ /dev/null
@@ -1,196 +0,0 @@
-<!DOCTYPE HTML>
-<!-- NewPage -->
-<html lang="en">
-<head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>Uses of Class beamline.mappers.DirectlyFollowsRelation (framework 0.1.0 API)</title>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
-<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
-<link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
-<script type="text/javascript" src="../../../script.js"></script>
-<script type="text/javascript" src="../../../jquery/jszip/dist/jszip.min.js"></script>
-<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
-<!--[if IE]>
-<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
-<![endif]-->
-<script type="text/javascript" src="../../../jquery/jquery-3.5.1.js"></script>
-<script type="text/javascript" src="../../../jquery/jquery-ui.js"></script>
-</head>
-<body>
-<script type="text/javascript"><!--
-    try {
-        if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class beamline.mappers.DirectlyFollowsRelation (framework 0.1.0 API)";
-        }
-    }
-    catch(err) {
-    }
-//-->
-var pathtoroot = "../../../";
-var useModuleDirectories = true;
-loadScripts(document, 'script');</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-<header role="banner">
-<nav role="navigation">
-<div class="fixedNav">
-<!-- ========= START OF TOP NAVBAR ======= -->
-<div class="topNav"><a id="navbar.top">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
-<a id="navbar.top.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../../index.html">Overview</a></li>
-<li><a href="../package-summary.html">Package</a></li>
-<li><a href="../DirectlyFollowsRelation.html" title="class in beamline.mappers">Class</a></li>
-<li class="navBarCell1Rev">Use</li>
-<li><a href="../package-tree.html">Tree</a></li>
-<li><a href="../../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../../index-all.html">Index</a></li>
-<li><a href="../../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_top">
-<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<ul class="navListSearch">
-<li><label for="search">SEARCH:</label>
-<input type="text" id="search" value="search" disabled="disabled">
-<input type="reset" id="reset" value="reset" disabled="disabled">
-</li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_top");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<a id="skip.navbar.top">
-<!--   -->
-</a></div>
-<!-- ========= END OF TOP NAVBAR ========= -->
-</div>
-<div class="navPadding">&nbsp;</div>
-<script type="text/javascript"><!--
-$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-//-->
-</script>
-</nav>
-</header>
-<main role="main">
-<div class="header">
-<h2 title="Uses of Class beamline.mappers.DirectlyFollowsRelation" class="title">Uses of Class<br>beamline.mappers.DirectlyFollowsRelation</h2>
-</div>
-<div class="classUseContainer">
-<ul class="blockList">
-<li class="blockList">
-<table class="useSummary">
-<caption><span>Packages that use <a href="../DirectlyFollowsRelation.html" title="class in beamline.mappers">DirectlyFollowsRelation</a></span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Package</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tbody>
-<tr class="altColor">
-<th class="colFirst" scope="row"><a href="#beamline.mappers">beamline.mappers</a></th>
-<td class="colLast">
-<div class="block">This package contains some mappers that are available by default in the
- framework.</div>
-</td>
-</tr>
-</tbody>
-</table>
-</li>
-<li class="blockList">
-<ul class="blockList">
-<li class="blockList">
-<section role="region"><a id="beamline.mappers">
-<!--   -->
-</a>
-<h3>Uses of <a href="../DirectlyFollowsRelation.html" title="class in beamline.mappers">DirectlyFollowsRelation</a> in <a href="../package-summary.html">beamline.mappers</a></h3>
-<table class="useSummary">
-<caption><span>Methods in <a href="../package-summary.html">beamline.mappers</a> that return types with arguments of type <a href="../DirectlyFollowsRelation.html" title="class in beamline.mappers">DirectlyFollowsRelation</a></span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colSecond" scope="col">Method</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tbody>
-<tr class="altColor">
-<td class="colFirst"><code>@NonNull io.reactivex.rxjava3.core.ObservableSource&lt;<a href="../DirectlyFollowsRelation.html" title="class in beamline.mappers">DirectlyFollowsRelation</a>&gt;</code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">InfiniteSizeDirectlyFollowsMapper.</span><code><span class="memberNameLink"><a href="../InfiniteSizeDirectlyFollowsMapper.html#apply(org.deckfour.xes.model.XTrace)">apply</a></span>&#8203;(@NonNull org.deckfour.xes.model.XTrace&nbsp;t)</code></th>
-<td class="colLast">&nbsp;</td>
-</tr>
-</tbody>
-</table>
-</section>
-</li>
-</ul>
-</li>
-</ul>
-</div>
-</main>
-<footer role="contentinfo">
-<nav role="navigation">
-<!-- ======= START OF BOTTOM NAVBAR ====== -->
-<div class="bottomNav"><a id="navbar.bottom">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
-<a id="navbar.bottom.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../../index.html">Overview</a></li>
-<li><a href="../package-summary.html">Package</a></li>
-<li><a href="../DirectlyFollowsRelation.html" title="class in beamline.mappers">Class</a></li>
-<li class="navBarCell1Rev">Use</li>
-<li><a href="../package-tree.html">Tree</a></li>
-<li><a href="../../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../../index-all.html">Index</a></li>
-<li><a href="../../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_bottom">
-<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_bottom");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<a id="skip.navbar.bottom">
-<!--   -->
-</a></div>
-<!-- ======== END OF BOTTOM NAVBAR ======= -->
-</nav>
-<p class="legalCopy"><small>Copyright &#169; 2022. All rights reserved.</small></p>
-</footer>
-</body>
-</html>
diff --git a/beamline/mappers/package-summary.html b/beamline/mappers/package-summary.html
deleted file mode 100644
index 23cf12a..0000000
--- a/beamline/mappers/package-summary.html
+++ /dev/null
@@ -1,183 +0,0 @@
-<!DOCTYPE HTML>
-<!-- NewPage -->
-<html lang="en">
-<head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>beamline.mappers (framework 0.1.0 API)</title>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
-<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
-<link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
-<script type="text/javascript" src="../../script.js"></script>
-<script type="text/javascript" src="../../jquery/jszip/dist/jszip.min.js"></script>
-<script type="text/javascript" src="../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
-<!--[if IE]>
-<script type="text/javascript" src="../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
-<![endif]-->
-<script type="text/javascript" src="../../jquery/jquery-3.5.1.js"></script>
-<script type="text/javascript" src="../../jquery/jquery-ui.js"></script>
-</head>
-<body>
-<script type="text/javascript"><!--
-    try {
-        if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="beamline.mappers (framework 0.1.0 API)";
-        }
-    }
-    catch(err) {
-    }
-//-->
-var pathtoroot = "../../";
-var useModuleDirectories = true;
-loadScripts(document, 'script');</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-<header role="banner">
-<nav role="navigation">
-<div class="fixedNav">
-<!-- ========= START OF TOP NAVBAR ======= -->
-<div class="topNav"><a id="navbar.top">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
-<a id="navbar.top.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../index.html">Overview</a></li>
-<li class="navBarCell1Rev">Package</li>
-<li>Class</li>
-<li><a href="package-use.html">Use</a></li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../index-all.html">Index</a></li>
-<li><a href="../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_top">
-<li><a href="../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<ul class="navListSearch">
-<li><label for="search">SEARCH:</label>
-<input type="text" id="search" value="search" disabled="disabled">
-<input type="reset" id="reset" value="reset" disabled="disabled">
-</li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_top");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<a id="skip.navbar.top">
-<!--   -->
-</a></div>
-<!-- ========= END OF TOP NAVBAR ========= -->
-</div>
-<div class="navPadding">&nbsp;</div>
-<script type="text/javascript"><!--
-$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-//-->
-</script>
-</nav>
-</header>
-<main role="main">
-<div class="header">
-<h1 title="Package" class="title">Package&nbsp;beamline.mappers</h1>
-</div>
-<div class="contentContainer">
-<section role="region"><a id="package.description">
-<!--   -->
-</a>
-<div class="block">This package contains some mappers that are available by default in the
- framework.</div>
-</section>
-<ul class="blockList">
-<li class="blockList">
-<table class="typeSummary">
-<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Class</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tbody>
-<tr class="altColor">
-<th class="colFirst" scope="row"><a href="DirectlyFollowsRelation.html" title="class in beamline.mappers">DirectlyFollowsRelation</a></th>
-<td class="colLast">
-<div class="block">This class represents a directly follows relation as produced by
- <a href="InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.mappers"><code>InfiniteSizeDirectlyFollowsMapper</code></a>.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<th class="colFirst" scope="row"><a href="InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.mappers">InfiniteSizeDirectlyFollowsMapper</a></th>
-<td class="colLast">
-<div class="block">This mapper transforms a stream of <code>XTrace</code>s into a stream of
- <a href="DirectlyFollowsRelation.html" title="class in beamline.mappers"><code>DirectlyFollowsRelation</code></a>s.</div>
-</td>
-</tr>
-</tbody>
-</table>
-</li>
-</ul>
-</div>
-</main>
-<footer role="contentinfo">
-<nav role="navigation">
-<!-- ======= START OF BOTTOM NAVBAR ====== -->
-<div class="bottomNav"><a id="navbar.bottom">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
-<a id="navbar.bottom.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../index.html">Overview</a></li>
-<li class="navBarCell1Rev">Package</li>
-<li>Class</li>
-<li><a href="package-use.html">Use</a></li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../index-all.html">Index</a></li>
-<li><a href="../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_bottom">
-<li><a href="../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_bottom");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<a id="skip.navbar.bottom">
-<!--   -->
-</a></div>
-<!-- ======== END OF BOTTOM NAVBAR ======= -->
-</nav>
-<p class="legalCopy"><small>Copyright &#169; 2022. All rights reserved.</small></p>
-</footer>
-</body>
-</html>
diff --git a/beamline/models/algorithms/HookEventProcessing.html b/beamline/models/algorithms/HookEventProcessing.html
deleted file mode 100644
index 0a02d02..0000000
--- a/beamline/models/algorithms/HookEventProcessing.html
+++ /dev/null
@@ -1,262 +0,0 @@
-<!DOCTYPE HTML>
-<!-- NewPage -->
-<html lang="en">
-<head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>HookEventProcessing (framework 0.1.0 API)</title>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
-<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
-<link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
-<script type="text/javascript" src="../../../script.js"></script>
-<script type="text/javascript" src="../../../jquery/jszip/dist/jszip.min.js"></script>
-<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
-<!--[if IE]>
-<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
-<![endif]-->
-<script type="text/javascript" src="../../../jquery/jquery-3.5.1.js"></script>
-<script type="text/javascript" src="../../../jquery/jquery-ui.js"></script>
-</head>
-<body>
-<script type="text/javascript"><!--
-    try {
-        if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="HookEventProcessing (framework 0.1.0 API)";
-        }
-    }
-    catch(err) {
-    }
-//-->
-var data = {"i0":6};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
-var altColor = "altColor";
-var rowColor = "rowColor";
-var tableTab = "tableTab";
-var activeTableTab = "activeTableTab";
-var pathtoroot = "../../../";
-var useModuleDirectories = true;
-loadScripts(document, 'script');</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-<header role="banner">
-<nav role="navigation">
-<div class="fixedNav">
-<!-- ========= START OF TOP NAVBAR ======= -->
-<div class="topNav"><a id="navbar.top">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
-<a id="navbar.top.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../../index.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/HookEventProcessing.html">Use</a></li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../../index-all.html">Index</a></li>
-<li><a href="../../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_top">
-<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<ul class="navListSearch">
-<li><label for="search">SEARCH:</label>
-<input type="text" id="search" value="search" disabled="disabled">
-<input type="reset" id="reset" value="reset" disabled="disabled">
-</li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_top");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
-</ul>
-</div>
-<a id="skip.navbar.top">
-<!--   -->
-</a></div>
-<!-- ========= END OF TOP NAVBAR ========= -->
-</div>
-<div class="navPadding">&nbsp;</div>
-<script type="text/javascript"><!--
-$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-//-->
-</script>
-</nav>
-</header>
-<!-- ======== START OF CLASS DATA ======== -->
-<main role="main">
-<div class="header">
-<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.models.algorithms</a></div>
-<h2 title="Interface HookEventProcessing" class="title">Interface HookEventProcessing</h2>
-</div>
-<div class="contentContainer">
-<div class="description">
-<ul class="blockList">
-<li class="blockList">
-<hr>
-<pre>public interface <span class="typeNameLabel">HookEventProcessing</span></pre>
-<div class="block">This interface defines the structure of the callback function that a
- <a href="StreamMiningAlgorithm.html" title="class in beamline.models.algorithms"><code>StreamMiningAlgorithm</code></a> can execute (cf.,
- <a href="StreamMiningAlgorithm.html#setOnBeforeEvent(beamline.models.algorithms.HookEventProcessing)"><code>StreamMiningAlgorithm.setOnBeforeEvent(HookEventProcessing)</code></a> and
- <a href="StreamMiningAlgorithm.html#setOnAfterEvent(beamline.models.algorithms.HookEventProcessing)"><code>StreamMiningAlgorithm.setOnAfterEvent(HookEventProcessing)</code></a>).</div>
-<dl>
-<dt><span class="simpleTagLabel">Author:</span></dt>
-<dd>Andrea Burattin</dd>
-</dl>
-</li>
-</ul>
-</div>
-<div class="summary">
-<ul class="blockList">
-<li class="blockList">
-<!-- ========== METHOD SUMMARY =========== -->
-<section role="region">
-<ul class="blockList">
-<li class="blockList"><a id="method.summary">
-<!--   -->
-</a>
-<h3>Method Summary</h3>
-<table class="memberSummary">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colSecond" scope="col">Method</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tr id="i0" class="altColor">
-<td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#trigger()">trigger</a></span>()</code></th>
-<td class="colLast">
-<div class="block">The actual function to trigger</div>
-</td>
-</tr>
-</table>
-</li>
-</ul>
-</section>
-</li>
-</ul>
-</div>
-<div class="details">
-<ul class="blockList">
-<li class="blockList">
-<!-- ============ METHOD DETAIL ========== -->
-<section role="region">
-<ul class="blockList">
-<li class="blockList"><a id="method.detail">
-<!--   -->
-</a>
-<h3>Method Detail</h3>
-<a id="trigger()">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>trigger</h4>
-<pre class="methodSignature">void&nbsp;trigger()</pre>
-<div class="block">The actual function to trigger</div>
-</li>
-</ul>
-</li>
-</ul>
-</section>
-</li>
-</ul>
-</div>
-</div>
-</main>
-<!-- ========= END OF CLASS DATA ========= -->
-<footer role="contentinfo">
-<nav role="navigation">
-<!-- ======= START OF BOTTOM NAVBAR ====== -->
-<div class="bottomNav"><a id="navbar.bottom">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
-<a id="navbar.bottom.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../../index.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/HookEventProcessing.html">Use</a></li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../../index-all.html">Index</a></li>
-<li><a href="../../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_bottom">
-<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_bottom");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
-</ul>
-</div>
-<a id="skip.navbar.bottom">
-<!--   -->
-</a></div>
-<!-- ======== END OF BOTTOM NAVBAR ======= -->
-</nav>
-<p class="legalCopy"><small>Copyright &#169; 2022. All rights reserved.</small></p>
-</footer>
-</body>
-</html>
diff --git a/beamline/models/algorithms/InfiniteSizeDirectlyFollowsMapper.html b/beamline/models/algorithms/InfiniteSizeDirectlyFollowsMapper.html
new file mode 100644
index 0000000..4555c20
--- /dev/null
+++ b/beamline/models/algorithms/InfiniteSizeDirectlyFollowsMapper.html
@@ -0,0 +1,372 @@
+<!DOCTYPE HTML>
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>InfiniteSizeDirectlyFollowsMapper (framework 0.1.0 API)</title>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta name="dc.created" content="2022-03-25">
+<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
+<link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
+<script type="text/javascript" src="../../../script.js"></script>
+<script type="text/javascript" src="../../../jquery/jszip/dist/jszip.min.js"></script>
+<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
+<!--[if IE]>
+<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
+<![endif]-->
+<script type="text/javascript" src="../../../jquery/jquery-3.5.1.js"></script>
+<script type="text/javascript" src="../../../jquery/jquery-ui.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="InfiniteSizeDirectlyFollowsMapper (framework 0.1.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var data = {"i0":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+var pathtoroot = "../../../";
+var useModuleDirectories = true;
+loadScripts(document, 'script');</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<header role="banner">
+<nav role="navigation">
+<div class="fixedNav">
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a id="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a id="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../index.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/InfiniteSizeDirectlyFollowsMapper.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
+</ul>
+<ul class="navListSearch">
+<li><label for="search">SEARCH:</label>
+<input type="text" id="search" value="search" disabled="disabled">
+<input type="reset" id="reset" value="reset" disabled="disabled">
+</li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a id="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+</div>
+<div class="navPadding">&nbsp;</div>
+<script type="text/javascript"><!--
+$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
+//-->
+</script>
+</nav>
+</header>
+<!-- ======== START OF CLASS DATA ======== -->
+<main role="main">
+<div class="header">
+<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.models.algorithms</a></div>
+<h2 title="Class InfiniteSizeDirectlyFollowsMapper" class="title">Class InfiniteSizeDirectlyFollowsMapper</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.flink.api.common.functions.AbstractRichFunction</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.flink.api.common.functions.RichFlatMapFunction&lt;<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>,&#8203;T&gt;</li>
+<li>
+<ul class="inheritance">
+<li><a href="StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">beamline.models.algorithms.StreamMiningAlgorithm</a>&lt;<a href="../responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li>beamline.models.algorithms.InfiniteSizeDirectlyFollowsMapper</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code>, <code>org.apache.flink.api.common.functions.FlatMapFunction&lt;<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>,&#8203;<a href="../responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a>&gt;</code>, <code>org.apache.flink.api.common.functions.Function</code>, <code>org.apache.flink.api.common.functions.RichFunction</code></dd>
+</dl>
+<hr>
+<pre>public class <span class="typeNameLabel">InfiniteSizeDirectlyFollowsMapper</span>
+extends <a href="StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a>&lt;<a href="../responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a>&gt;</pre>
+<div class="block">This mapper transforms a stream of <code>XTrace</code>s into a stream of
+ <a href="../responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses"><code>DirectlyFollowsRelation</code></a>s. It transforms each pair of consequent
+ events appearing in the same case as a directly follows operator (generating
+ an object with type <a href="../responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses"><code>DirectlyFollowsRelation</code></a>).
+ 
+ <p>
+ This mapper is called infinite because it's memory footprint will grow as the
+ number of case ids grows as well.</div>
+<dl>
+<dt><span class="simpleTagLabel">Author:</span></dt>
+<dd>Andrea Burattin</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../serialized-form.html#beamline.models.algorithms.InfiniteSizeDirectlyFollowsMapper">Serialized Form</a></dd>
+</dl>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Constructor</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr class="altColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">InfiniteSizeDirectlyFollowsMapper</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+</section>
+<!-- ========== METHOD SUMMARY =========== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Method</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="../responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#ingest(beamline.events.BEvent)">ingest</a></span>&#8203;(<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;event)</code></th>
+<td class="colLast">
+<div class="block">This abstract method is what each derive class is expected to implement.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.beamline.models.algorithms.StreamMiningAlgorithm">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;beamline.models.algorithms.<a href="StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a></h3>
+<code><a href="StreamMiningAlgorithm.html#flatMap(beamline.events.BEvent,org.apache.flink.util.Collector)">flatMap</a>, <a href="StreamMiningAlgorithm.html#getProcessedEvents()">getProcessedEvents</a>, <a href="StreamMiningAlgorithm.html#open(org.apache.flink.configuration.Configuration)">open</a>, <a href="StreamMiningAlgorithm.html#process(beamline.events.BEvent)">process</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.org.apache.flink.api.common.functions.AbstractRichFunction">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.flink.api.common.functions.AbstractRichFunction</h3>
+<code>close, getIterationRuntimeContext, getRuntimeContext, setRuntimeContext</code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
+<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">toString</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</section>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a id="&lt;init&gt;()">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>InfiniteSizeDirectlyFollowsMapper</h4>
+<pre>public&nbsp;InfiniteSizeDirectlyFollowsMapper()</pre>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+<!-- ============ METHOD DETAIL ========== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a id="ingest(beamline.events.BEvent)">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>ingest</h4>
+<pre class="methodSignature">public&nbsp;<a href="../responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a>&nbsp;ingest&#8203;(<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;event)
+                               throws <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink">Exception</a></pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="StreamMiningAlgorithm.html#ingest(beamline.events.BEvent)">StreamMiningAlgorithm</a></code></span></div>
+<div class="block">This abstract method is what each derive class is expected to implement.
+ The argument of the method is the new observation and the returned value
+ is the result of the mining.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="StreamMiningAlgorithm.html#ingest(beamline.events.BEvent)">ingest</a></code>&nbsp;in class&nbsp;<code><a href="StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a>&lt;<a href="../responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>event</code> - the new event being observed</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the result of the mining of the event</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink">Exception</a></code> - general exception that can occur with the ingestion of
+ the event</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+</li>
+</ul>
+</div>
+</div>
+</main>
+<!-- ========= END OF CLASS DATA ========= -->
+<footer role="contentinfo">
+<nav role="navigation">
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a id="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a id="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../index.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/InfiniteSizeDirectlyFollowsMapper.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a id="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+</nav>
+<p class="legalCopy"><small>Copyright &#169; 2022. All rights reserved.</small></p>
+</footer>
+</body>
+</html>
diff --git a/beamline/models/algorithms/StreamMiningAlgorithm.html b/beamline/models/algorithms/StreamMiningAlgorithm.html
index f29c89a..023a1e8 100644
--- a/beamline/models/algorithms/StreamMiningAlgorithm.html
+++ b/beamline/models/algorithms/StreamMiningAlgorithm.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>StreamMiningAlgorithm (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
@@ -27,7 +27,7 @@
     catch(err) {
     }
 //-->
-var data = {"i0":10,"i1":10,"i2":10,"i3":6,"i4":10,"i5":10,"i6":10,"i7":10};
+var data = {"i0":10,"i1":10,"i2":6,"i3":10,"i4":10};
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -117,14 +117,24 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <main role="main">
 <div class="header">
 <div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.models.algorithms</a></div>
-<h2 title="Class StreamMiningAlgorithm" class="title">Class StreamMiningAlgorithm&lt;T,&#8203;K&gt;</h2>
+<h2 title="Class StreamMiningAlgorithm" class="title">Class StreamMiningAlgorithm&lt;T extends <a href="../responses/Response.html" title="class in beamline.models.responses">Response</a>&gt;</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
 <li>
 <ul class="inheritance">
-<li>beamline.models.algorithms.StreamMiningAlgorithm&lt;T,&#8203;K&gt;</li>
+<li>org.apache.flink.api.common.functions.AbstractRichFunction</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.flink.api.common.functions.RichFlatMapFunction&lt;<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>,&#8203;T&gt;</li>
+<li>
+<ul class="inheritance">
+<li>beamline.models.algorithms.StreamMiningAlgorithm&lt;T&gt;</li>
+</ul>
+</li>
+</ul>
+</li>
 </ul>
 </li>
 </ul>
@@ -132,24 +142,24 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="blockList">
 <li class="blockList">
 <dl>
-<dt><span class="paramLabel">Type Parameters:</span></dt>
-<dd><code>T</code> - the type of the consumed events</dd>
-<dd><code>K</code> - the type of the responses produced by the mining algorithm</dd>
+<dt>All Implemented Interfaces:</dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code>, <code>org.apache.flink.api.common.functions.FlatMapFunction&lt;<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>,&#8203;T&gt;</code>, <code>org.apache.flink.api.common.functions.Function</code>, <code>org.apache.flink.api.common.functions.RichFunction</code></dd>
 </dl>
 <dl>
-<dt>All Implemented Interfaces:</dt>
-<dd><code>io.reactivex.rxjava3.functions.Consumer&lt;T&gt;</code></dd>
+<dt>Direct Known Subclasses:</dt>
+<dd><code><a href="InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms">InfiniteSizeDirectlyFollowsMapper</a></code></dd>
 </dl>
 <hr>
-<pre>public abstract class <span class="typeNameLabel">StreamMiningAlgorithm&lt;T,&#8203;K&gt;</span>
-extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
-implements io.reactivex.rxjava3.functions.Consumer&lt;T&gt;</pre>
+<pre>public abstract class <span class="typeNameLabel">StreamMiningAlgorithm&lt;T extends <a href="../responses/Response.html" title="class in beamline.models.responses">Response</a>&gt;</span>
+extends org.apache.flink.api.common.functions.RichFlatMapFunction&lt;<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>,&#8203;T&gt;</pre>
 <div class="block">This abstract class defines the root of the mining algorithms hierarchy. It
- is a <code>Consumer</code> of elements with type <code>T</code> that is capable of
- producing responses of a certain type <code>K</code>.</div>
+ is a <code>MapFunction</code> of elements with type <a href="../../events/BEvent.html" title="class in beamline.events"><code>BEvent</code></a> that is capable
+ of producing responses of type <a href="../responses/Response.html" title="class in beamline.models.responses"><code>Response</code></a>.</div>
 <dl>
 <dt><span class="simpleTagLabel">Author:</span></dt>
 <dd>Andrea Burattin</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../serialized-form.html#beamline.models.algorithms.StreamMiningAlgorithm">Serialized Form</a></dd>
 </dl>
 </li>
 </ul>
@@ -194,58 +204,43 @@ implements io.reactivex.rxjava3.functions.Consumer&lt;T&gt;</pre>
 </tr>
 <tr id="i0" class="altColor">
 <td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#accept(T)">accept</a></span>&#8203;(<a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a>&nbsp;t)</code></th>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#flatMap(beamline.events.BEvent,org.apache.flink.util.Collector)">flatMap</a></span>&#8203;(<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;event,
+       org.apache.flink.util.Collector&lt;<a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a>&gt;&nbsp;out)</code></th>
 <td class="colLast">&nbsp;</td>
 </tr>
 <tr id="i1" class="rowColor">
-<td class="colFirst"><code><a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">K</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLatestResponse()">getLatestResponse</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns the latest result of the mining</div>
-</td>
-</tr>
-<tr id="i2" class="altColor">
-<td class="colFirst"><code>int</code></td>
+<td class="colFirst"><code>long</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getProcessedEvents()">getProcessedEvents</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Returns the total number of events processed so far</div>
 </td>
 </tr>
-<tr id="i3" class="rowColor">
-<td class="colFirst"><code>abstract <a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">K</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#ingest(T)">ingest</a></span>&#8203;(<a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a>&nbsp;event)</code></th>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>abstract <a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#ingest(beamline.events.BEvent)">ingest</a></span>&#8203;(<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;event)</code></th>
 <td class="colLast">
 <div class="block">This abstract method is what each derive class is expected to implement.</div>
 </td>
 </tr>
-<tr id="i4" class="altColor">
-<td class="colFirst"><code>protected void</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#process(T)">process</a></span>&#8203;(<a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a>&nbsp;event)</code></th>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#open(org.apache.flink.configuration.Configuration)">open</a></span>&#8203;(org.apache.flink.configuration.Configuration&nbsp;parameters)</code></th>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr id="i5" class="rowColor">
-<td class="colFirst"><code>protected <a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">K</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setLatestResponse(K)">setLatestResponse</a></span>&#8203;(<a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">K</a>&nbsp;latestResponse)</code></th>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>protected <a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#process(beamline.events.BEvent)">process</a></span>&#8203;(<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;event)</code></th>
 <td class="colLast">&nbsp;</td>
 </tr>
-<tr id="i6" class="altColor">
-<td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setOnAfterEvent(beamline.models.algorithms.HookEventProcessing)">setOnAfterEvent</a></span>&#8203;(<a href="HookEventProcessing.html" title="interface in beamline.models.algorithms">HookEventProcessing</a>&nbsp;onAfterEvent)</code></th>
-<td class="colLast">
-<div class="block">This method can be used to set a hook to a callback function to be
- executed after an event is processed</div>
-</td>
-</tr>
-<tr id="i7" class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setOnBeforeEvent(beamline.models.algorithms.HookEventProcessing)">setOnBeforeEvent</a></span>&#8203;(<a href="HookEventProcessing.html" title="interface in beamline.models.algorithms">HookEventProcessing</a>&nbsp;onBeforeEvent)</code></th>
-<td class="colLast">
-<div class="block">This method can be used to set a hook to a callback function to be
- executed before an event is processed</div>
-</td>
-</tr>
 </table>
 <ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.org.apache.flink.api.common.functions.AbstractRichFunction">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.flink.api.common.functions.AbstractRichFunction</h3>
+<code>close, getIterationRuntimeContext, getRuntimeContext, setRuntimeContext</code></li>
+</ul>
+<ul class="blockList">
 <li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
 <!--   -->
 </a>
@@ -287,122 +282,90 @@ implements io.reactivex.rxjava3.functions.Consumer&lt;T&gt;</pre>
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a id="ingest(java.lang.Object)">
-<!--   -->
-</a><a id="ingest(T)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>ingest</h4>
-<pre class="methodSignature">public abstract&nbsp;<a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">K</a>&nbsp;ingest&#8203;(<a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a>&nbsp;event)</pre>
-<div class="block">This abstract method is what each derive class is expected to implement.
- The argument of the method is the new observation and the returned value
- is the result of the mining.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>event</code> - the new event being observed</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the result of the mining of the event</dd>
-</dl>
-</li>
-</ul>
-<a id="getProcessedEvents()">
+<a id="open(org.apache.flink.configuration.Configuration)">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>getProcessedEvents</h4>
-<pre class="methodSignature">public&nbsp;int&nbsp;getProcessedEvents()</pre>
-<div class="block">Returns the total number of events processed so far</div>
+<h4>open</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;open&#8203;(org.apache.flink.configuration.Configuration&nbsp;parameters)
+          throws <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink">Exception</a></pre>
 <dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the total number of events processed so far</dd>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>open</code>&nbsp;in interface&nbsp;<code>org.apache.flink.api.common.functions.RichFunction</code></dd>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code>open</code>&nbsp;in class&nbsp;<code>org.apache.flink.api.common.functions.AbstractRichFunction</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink">Exception</a></code></dd>
 </dl>
 </li>
 </ul>
-<a id="getLatestResponse()">
+<a id="flatMap(beamline.events.BEvent,org.apache.flink.util.Collector)">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>getLatestResponse</h4>
-<pre class="methodSignature">public&nbsp;<a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">K</a>&nbsp;getLatestResponse()</pre>
-<div class="block">Returns the latest result of the mining</div>
+<h4>flatMap</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;flatMap&#8203;(<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;event,
+                    org.apache.flink.util.Collector&lt;<a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a>&gt;&nbsp;out)
+             throws <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink">Exception</a></pre>
 <dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the latest result of the mining</dd>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>flatMap</code>&nbsp;in interface&nbsp;<code>org.apache.flink.api.common.functions.FlatMapFunction&lt;<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>,&#8203;<a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a> extends <a href="../responses/Response.html" title="class in beamline.models.responses">Response</a>&gt;</code></dd>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>flatMap</code>&nbsp;in class&nbsp;<code>org.apache.flink.api.common.functions.RichFlatMapFunction&lt;<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>,&#8203;<a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a> extends <a href="../responses/Response.html" title="class in beamline.models.responses">Response</a>&gt;</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink">Exception</a></code></dd>
 </dl>
 </li>
 </ul>
-<a id="setOnBeforeEvent(beamline.models.algorithms.HookEventProcessing)">
+<a id="ingest(beamline.events.BEvent)">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>setOnBeforeEvent</h4>
-<pre class="methodSignature">public&nbsp;void&nbsp;setOnBeforeEvent&#8203;(<a href="HookEventProcessing.html" title="interface in beamline.models.algorithms">HookEventProcessing</a>&nbsp;onBeforeEvent)</pre>
-<div class="block">This method can be used to set a hook to a callback function to be
- executed before an event is processed</div>
+<h4>ingest</h4>
+<pre class="methodSignature">public abstract&nbsp;<a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a>&nbsp;ingest&#8203;(<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;event)
+                  throws <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink">Exception</a></pre>
+<div class="block">This abstract method is what each derive class is expected to implement.
+ The argument of the method is the new observation and the returned value
+ is the result of the mining.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>onBeforeEvent</code> - the callback function</dd>
+<dd><code>event</code> - the new event being observed</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the result of the mining of the event</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink">Exception</a></code> - general exception that can occur with the ingestion of
+ the event</dd>
 </dl>
 </li>
 </ul>
-<a id="setOnAfterEvent(beamline.models.algorithms.HookEventProcessing)">
+<a id="getProcessedEvents()">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>setOnAfterEvent</h4>
-<pre class="methodSignature">public&nbsp;void&nbsp;setOnAfterEvent&#8203;(<a href="HookEventProcessing.html" title="interface in beamline.models.algorithms">HookEventProcessing</a>&nbsp;onAfterEvent)</pre>
-<div class="block">This method can be used to set a hook to a callback function to be
- executed after an event is processed</div>
+<h4>getProcessedEvents</h4>
+<pre class="methodSignature">public&nbsp;long&nbsp;getProcessedEvents()</pre>
+<div class="block">Returns the total number of events processed so far</div>
 <dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>onAfterEvent</code> - the callback function</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the total number of events processed so far</dd>
 </dl>
 </li>
 </ul>
-<a id="process(java.lang.Object)">
-<!--   -->
-</a><a id="process(T)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>process</h4>
-<pre class="methodSignature">protected&nbsp;void&nbsp;process&#8203;(<a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a>&nbsp;event)</pre>
-</li>
-</ul>
-<a id="setLatestResponse(java.lang.Object)">
-<!--   -->
-</a><a id="setLatestResponse(K)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>setLatestResponse</h4>
-<pre class="methodSignature">protected&nbsp;<a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">K</a>&nbsp;setLatestResponse&#8203;(<a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">K</a>&nbsp;latestResponse)</pre>
-</li>
-</ul>
-<a id="accept(java.lang.Object)">
-<!--   -->
-</a><a id="accept(T)">
+<a id="process(beamline.events.BEvent)">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>accept</h4>
-<pre class="methodSignature">public&nbsp;void&nbsp;accept&#8203;(@NonNull
-                   <a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a>&nbsp;t)
-            throws <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Throwable</a></pre>
+<h4>process</h4>
+<pre class="methodSignature">protected&nbsp;<a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a>&nbsp;process&#8203;(<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;event)
+             throws <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink">Exception</a></pre>
 <dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code>accept</code>&nbsp;in interface&nbsp;<code>io.reactivex.rxjava3.functions.Consumer&lt;<a href="StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a>&gt;</code></dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Throwable</a></code></dd>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink">Exception</a></code></dd>
 </dl>
 </li>
 </ul>
diff --git a/beamline/mappers/class-use/InfiniteSizeDirectlyFollowsMapper.html b/beamline/models/algorithms/class-use/InfiniteSizeDirectlyFollowsMapper.html
similarity index 60%
rename from beamline/mappers/class-use/InfiniteSizeDirectlyFollowsMapper.html
rename to beamline/models/algorithms/class-use/InfiniteSizeDirectlyFollowsMapper.html
index 7d2d5da..028cf24 100644
--- a/beamline/mappers/class-use/InfiniteSizeDirectlyFollowsMapper.html
+++ b/beamline/models/algorithms/class-use/InfiniteSizeDirectlyFollowsMapper.html
@@ -2,32 +2,32 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>Uses of Class beamline.mappers.InfiniteSizeDirectlyFollowsMapper (framework 0.1.0 API)</title>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>Uses of Class beamline.models.algorithms.InfiniteSizeDirectlyFollowsMapper (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
-<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
-<link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
-<script type="text/javascript" src="../../../script.js"></script>
-<script type="text/javascript" src="../../../jquery/jszip/dist/jszip.min.js"></script>
-<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
+<meta name="dc.created" content="2022-03-25">
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+<script type="text/javascript" src="../../../../jquery/jszip/dist/jszip.min.js"></script>
+<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
 <!--[if IE]>
-<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
+<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
 <![endif]-->
-<script type="text/javascript" src="../../../jquery/jquery-3.5.1.js"></script>
-<script type="text/javascript" src="../../../jquery/jquery-ui.js"></script>
+<script type="text/javascript" src="../../../../jquery/jquery-3.5.1.js"></script>
+<script type="text/javascript" src="../../../../jquery/jquery-ui.js"></script>
 </head>
 <body>
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class beamline.mappers.InfiniteSizeDirectlyFollowsMapper (framework 0.1.0 API)";
+            parent.document.title="Uses of Class beamline.models.algorithms.InfiniteSizeDirectlyFollowsMapper (framework 0.1.0 API)";
         }
     }
     catch(err) {
     }
 //-->
-var pathtoroot = "../../../";
+var pathtoroot = "../../../../";
 var useModuleDirectories = true;
 loadScripts(document, 'script');</script>
 <noscript>
@@ -45,19 +45,19 @@ loadScripts(document, 'script');</script>
 <!--   -->
 </a>
 <ul class="navList" title="Navigation">
-<li><a href="../../../index.html">Overview</a></li>
+<li><a href="../../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.mappers">Class</a></li>
+<li><a href="../InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
-<li><a href="../../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../../index-all.html">Index</a></li>
-<li><a href="../../../help-doc.html">Help</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
 </ul>
 </div>
 <div class="subNav">
 <ul class="navList" id="allclasses_navbar_top">
-<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
+<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
 </ul>
 <ul class="navListSearch">
 <li><label for="search">SEARCH:</label>
@@ -94,9 +94,9 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </header>
 <main role="main">
 <div class="header">
-<h2 title="Uses of Class beamline.mappers.InfiniteSizeDirectlyFollowsMapper" class="title">Uses of Class<br>beamline.mappers.InfiniteSizeDirectlyFollowsMapper</h2>
+<h2 title="Uses of Class beamline.models.algorithms.InfiniteSizeDirectlyFollowsMapper" class="title">Uses of Class<br>beamline.models.algorithms.InfiniteSizeDirectlyFollowsMapper</h2>
 </div>
-<div class="classUseContainer">No usage of beamline.mappers.InfiniteSizeDirectlyFollowsMapper</div>
+<div class="classUseContainer">No usage of beamline.models.algorithms.InfiniteSizeDirectlyFollowsMapper</div>
 </main>
 <footer role="contentinfo">
 <nav role="navigation">
@@ -109,19 +109,19 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <!--   -->
 </a>
 <ul class="navList" title="Navigation">
-<li><a href="../../../index.html">Overview</a></li>
+<li><a href="../../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.mappers">Class</a></li>
+<li><a href="../InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
-<li><a href="../../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../../index-all.html">Index</a></li>
-<li><a href="../../../help-doc.html">Help</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
 </ul>
 </div>
 <div class="subNav">
 <ul class="navList" id="allclasses_navbar_bottom">
-<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
+<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
 </ul>
 <div>
 <script type="text/javascript"><!--
diff --git a/beamline/models/algorithms/class-use/StreamMiningAlgorithm.html b/beamline/models/algorithms/class-use/StreamMiningAlgorithm.html
index 7ab8b07..a906ccb 100644
--- a/beamline/models/algorithms/class-use/StreamMiningAlgorithm.html
+++ b/beamline/models/algorithms/class-use/StreamMiningAlgorithm.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Uses of Class beamline.models.algorithms.StreamMiningAlgorithm (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
@@ -96,7 +96,57 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <div class="header">
 <h2 title="Uses of Class beamline.models.algorithms.StreamMiningAlgorithm" class="title">Uses of Class<br>beamline.models.algorithms.StreamMiningAlgorithm</h2>
 </div>
-<div class="classUseContainer">No usage of beamline.models.algorithms.StreamMiningAlgorithm</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary">
+<caption><span>Packages that use <a href="../StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<th class="colFirst" scope="row"><a href="#beamline.models.algorithms">beamline.models.algorithms</a></th>
+<td class="colLast">
+<div class="block">This package contains all classes of the framework necessary to have mining
+ algorithms functioning.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList">
+<section role="region"><a id="beamline.models.algorithms">
+<!--   -->
+</a>
+<h3>Uses of <a href="../StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a> in <a href="../package-summary.html">beamline.models.algorithms</a></h3>
+<table class="useSummary">
+<caption><span>Subclasses of <a href="../StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a> in <a href="../package-summary.html">beamline.models.algorithms</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Class</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms">InfiniteSizeDirectlyFollowsMapper</a></span></code></th>
+<td class="colLast">
+<div class="block">This mapper transforms a stream of <code>XTrace</code>s into a stream of
+ <a href="../../responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses"><code>DirectlyFollowsRelation</code></a>s.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</section>
+</li>
+</ul>
+</li>
+</ul>
+</div>
 </main>
 <footer role="contentinfo">
 <nav role="navigation">
diff --git a/beamline/models/algorithms/package-summary.html b/beamline/models/algorithms/package-summary.html
index 5c968c8..0fb80b4 100644
--- a/beamline/models/algorithms/package-summary.html
+++ b/beamline/models/algorithms/package-summary.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>beamline.models.algorithms (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
@@ -106,34 +106,21 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="blockList">
 <li class="blockList">
 <table class="typeSummary">
-<caption><span>Interface Summary</span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
-<th class="colFirst" scope="col">Interface</th>
+<th class="colFirst" scope="col">Class</th>
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tbody>
 <tr class="altColor">
-<th class="colFirst" scope="row"><a href="HookEventProcessing.html" title="interface in beamline.models.algorithms">HookEventProcessing</a></th>
+<th class="colFirst" scope="row"><a href="InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms">InfiniteSizeDirectlyFollowsMapper</a></th>
 <td class="colLast">
-<div class="block">This interface defines the structure of the callback function that a
- <a href="StreamMiningAlgorithm.html" title="class in beamline.models.algorithms"><code>StreamMiningAlgorithm</code></a> can execute (cf.,
- <a href="StreamMiningAlgorithm.html#setOnBeforeEvent(beamline.models.algorithms.HookEventProcessing)"><code>StreamMiningAlgorithm.setOnBeforeEvent(HookEventProcessing)</code></a> and
- <a href="StreamMiningAlgorithm.html#setOnAfterEvent(beamline.models.algorithms.HookEventProcessing)"><code>StreamMiningAlgorithm.setOnAfterEvent(HookEventProcessing)</code></a>).</div>
+<div class="block">This mapper transforms a stream of <code>XTrace</code>s into a stream of
+ <a href="../responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses"><code>DirectlyFollowsRelation</code></a>s.</div>
 </td>
 </tr>
-</tbody>
-</table>
-</li>
-<li class="blockList">
-<table class="typeSummary">
-<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Class</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tbody>
-<tr class="altColor">
-<th class="colFirst" scope="row"><a href="StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a>&lt;T,&#8203;K&gt;</th>
+<tr class="rowColor">
+<th class="colFirst" scope="row"><a href="StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a>&lt;T extends <a href="../responses/Response.html" title="class in beamline.models.responses">Response</a>&gt;</th>
 <td class="colLast">
 <div class="block">This abstract class defines the root of the mining algorithms hierarchy.</div>
 </td>
diff --git a/beamline/models/algorithms/package-tree.html b/beamline/models/algorithms/package-tree.html
index df4bc50..73cc8b1 100644
--- a/beamline/models/algorithms/package-tree.html
+++ b/beamline/models/algorithms/package-tree.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>beamline.models.algorithms Class Hierarchy (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
@@ -106,15 +106,21 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul>
 <li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink"><span class="typeNameLink">Object</span></a>
 <ul>
-<li class="circle">beamline.models.algorithms.<a href="StreamMiningAlgorithm.html" title="class in beamline.models.algorithms"><span class="typeNameLink">StreamMiningAlgorithm</span></a>&lt;T,&#8203;K&gt; (implements io.reactivex.rxjava3.functions.Consumer&lt;T&gt;)</li>
+<li class="circle">org.apache.flink.api.common.functions.AbstractRichFunction (implements org.apache.flink.api.common.functions.RichFunction, java.io.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>)
+<ul>
+<li class="circle">org.apache.flink.api.common.functions.RichFlatMapFunction&lt;IN,&#8203;OUT&gt; (implements org.apache.flink.api.common.functions.FlatMapFunction&lt;T,&#8203;O&gt;)
+<ul>
+<li class="circle">beamline.models.algorithms.<a href="StreamMiningAlgorithm.html" title="class in beamline.models.algorithms"><span class="typeNameLink">StreamMiningAlgorithm</span></a>&lt;T&gt;
+<ul>
+<li class="circle">beamline.models.algorithms.<a href="InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms"><span class="typeNameLink">InfiniteSizeDirectlyFollowsMapper</span></a></li>
 </ul>
 </li>
 </ul>
-</section>
-<section role="region">
-<h2 title="Interface Hierarchy">Interface Hierarchy</h2>
-<ul>
-<li class="circle">beamline.models.algorithms.<a href="HookEventProcessing.html" title="interface in beamline.models.algorithms"><span class="typeNameLink">HookEventProcessing</span></a></li>
+</li>
+</ul>
+</li>
+</ul>
+</li>
 </ul>
 </section>
 </div>
diff --git a/beamline/models/algorithms/package-use.html b/beamline/models/algorithms/package-use.html
index dbacf0e..7e80bcc 100644
--- a/beamline/models/algorithms/package-use.html
+++ b/beamline/models/algorithms/package-use.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Uses of Package beamline.models.algorithms (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
@@ -127,12 +127,9 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </tr>
 <tbody>
 <tr class="altColor">
-<th class="colFirst" scope="row"><a href="class-use/HookEventProcessing.html#beamline.models.algorithms">HookEventProcessing</a></th>
+<th class="colFirst" scope="row"><a href="class-use/StreamMiningAlgorithm.html#beamline.models.algorithms">StreamMiningAlgorithm</a></th>
 <td class="colLast">
-<div class="block">This interface defines the structure of the callback function that a
- <a href="StreamMiningAlgorithm.html" title="class in beamline.models.algorithms"><code>StreamMiningAlgorithm</code></a> can execute (cf.,
- <a href="StreamMiningAlgorithm.html#setOnBeforeEvent(beamline.models.algorithms.HookEventProcessing)"><code>StreamMiningAlgorithm.setOnBeforeEvent(HookEventProcessing)</code></a> and
- <a href="StreamMiningAlgorithm.html#setOnAfterEvent(beamline.models.algorithms.HookEventProcessing)"><code>StreamMiningAlgorithm.setOnAfterEvent(HookEventProcessing)</code></a>).</div>
+<div class="block">This abstract class defines the root of the mining algorithms hierarchy.</div>
 </td>
 </tr>
 </tbody>
diff --git a/beamline/models/responses/DirectlyFollowsRelation.html b/beamline/models/responses/DirectlyFollowsRelation.html
new file mode 100644
index 0000000..8b69c35
--- /dev/null
+++ b/beamline/models/responses/DirectlyFollowsRelation.html
@@ -0,0 +1,426 @@
+<!DOCTYPE HTML>
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>DirectlyFollowsRelation (framework 0.1.0 API)</title>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta name="dc.created" content="2022-03-25">
+<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
+<link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
+<script type="text/javascript" src="../../../script.js"></script>
+<script type="text/javascript" src="../../../jquery/jszip/dist/jszip.min.js"></script>
+<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
+<!--[if IE]>
+<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
+<![endif]-->
+<script type="text/javascript" src="../../../jquery/jquery-3.5.1.js"></script>
+<script type="text/javascript" src="../../../jquery/jquery-ui.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="DirectlyFollowsRelation (framework 0.1.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+var pathtoroot = "../../../";
+var useModuleDirectories = true;
+loadScripts(document, 'script');</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<header role="banner">
+<nav role="navigation">
+<div class="fixedNav">
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a id="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a id="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../index.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/DirectlyFollowsRelation.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
+</ul>
+<ul class="navListSearch">
+<li><label for="search">SEARCH:</label>
+<input type="text" id="search" value="search" disabled="disabled">
+<input type="reset" id="reset" value="reset" disabled="disabled">
+</li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a id="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+</div>
+<div class="navPadding">&nbsp;</div>
+<script type="text/javascript"><!--
+$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
+//-->
+</script>
+</nav>
+</header>
+<!-- ======== START OF CLASS DATA ======== -->
+<main role="main">
+<div class="header">
+<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.models.responses</a></div>
+<h2 title="Class DirectlyFollowsRelation" class="title">Class DirectlyFollowsRelation</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="Response.html" title="class in beamline.models.responses">beamline.models.responses.Response</a></li>
+<li>
+<ul class="inheritance">
+<li>beamline.models.responses.DirectlyFollowsRelation</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code></dd>
+</dl>
+<hr>
+<pre>public class <span class="typeNameLabel">DirectlyFollowsRelation</span>
+extends <a href="Response.html" title="class in beamline.models.responses">Response</a></pre>
+<div class="block">This class represents a directly follows relation as produced by
+ <a href="../algorithms/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms"><code>InfiniteSizeDirectlyFollowsMapper</code></a>.</div>
+<dl>
+<dt><span class="simpleTagLabel">Author:</span></dt>
+<dd>Andrea Burattin</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../serialized-form.html#beamline.models.responses.DirectlyFollowsRelation">Serialized Form</a></dd>
+</dl>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Constructor</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr class="altColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(beamline.events.BEvent,beamline.events.BEvent)">DirectlyFollowsRelation</a></span>&#8203;(<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;from,
+                       <a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;to)</code></th>
+<td class="colLast">
+<div class="block">Constructor</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+</section>
+<!-- ========== METHOD SUMMARY =========== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Method</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#equals(java.lang.Object)">equals</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;obj)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCaseId()">getCaseId</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns the case id this directly follows relation belongs to</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getFrom()">getFrom</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns the source event</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getTo()">getTo</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns the target event</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hashCode()">hashCode</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.beamline.models.responses.Response">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;beamline.models.responses.<a href="Response.html" title="class in beamline.models.responses">Response</a></h3>
+<code><a href="Response.html#getProcessedEvents()">getProcessedEvents</a>, <a href="Response.html#setProcessedEvents(java.lang.Long)">setProcessedEvents</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
+<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">toString</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</section>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a id="&lt;init&gt;(beamline.events.BEvent,beamline.events.BEvent)">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>DirectlyFollowsRelation</h4>
+<pre>public&nbsp;DirectlyFollowsRelation&#8203;(<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;from,
+                               <a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;to)</pre>
+<div class="block">Constructor</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>from</code> - the first event</dd>
+<dd><code>to</code> - the second event</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+<!-- ============ METHOD DETAIL ========== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a id="getCaseId()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getCaseId</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;getCaseId()</pre>
+<div class="block">Returns the case id this directly follows relation belongs to</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the case id</dd>
+</dl>
+</li>
+</ul>
+<a id="getFrom()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getFrom</h4>
+<pre class="methodSignature">public&nbsp;<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;getFrom()</pre>
+<div class="block">Returns the source event</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the source event</dd>
+</dl>
+</li>
+</ul>
+<a id="getTo()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTo</h4>
+<pre class="methodSignature">public&nbsp;<a href="../../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;getTo()</pre>
+<div class="block">Returns the target event</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the target event</dd>
+</dl>
+</li>
+</ul>
+<a id="equals(java.lang.Object)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>equals</h4>
+<pre class="methodSignature">public&nbsp;boolean&nbsp;equals&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;obj)</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+<a id="hashCode()">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>hashCode</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;hashCode()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+</li>
+</ul>
+</div>
+</div>
+</main>
+<!-- ========= END OF CLASS DATA ========= -->
+<footer role="contentinfo">
+<nav role="navigation">
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a id="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a id="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../index.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/DirectlyFollowsRelation.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a id="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+</nav>
+<p class="legalCopy"><small>Copyright &#169; 2022. All rights reserved.</small></p>
+</footer>
+</body>
+</html>
diff --git a/beamline/models/responses/GraphvizResponse.html b/beamline/models/responses/GraphvizResponse.html
index 8cf39f5..2cc1fc3 100644
--- a/beamline/models/responses/GraphvizResponse.html
+++ b/beamline/models/responses/GraphvizResponse.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>GraphvizResponse (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
@@ -91,13 +91,13 @@ loadScripts(document, 'script');</script>
 <li>Summary:&nbsp;</li>
 <li>Nested&nbsp;|&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.detail">Method</a></li>
 </ul>
 </div>
@@ -117,24 +117,39 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <main role="main">
 <div class="header">
 <div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.models.responses</a></div>
-<h2 title="Interface GraphvizResponse" class="title">Interface GraphvizResponse</h2>
+<h2 title="Class GraphvizResponse" class="title">Class GraphvizResponse</h2>
 </div>
 <div class="contentContainer">
+<ul class="inheritance">
+<li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="Response.html" title="class in beamline.models.responses">beamline.models.responses.Response</a></li>
+<li>
+<ul class="inheritance">
+<li>beamline.models.responses.GraphvizResponse</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
 <div class="description">
 <ul class="blockList">
 <li class="blockList">
 <dl>
-<dt>All Superinterfaces:</dt>
-<dd><code><a href="Response.html" title="interface in beamline.models.responses">Response</a></code></dd>
+<dt>All Implemented Interfaces:</dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code></dd>
 </dl>
 <hr>
-<pre>public interface <span class="typeNameLabel">GraphvizResponse</span>
-extends <a href="Response.html" title="interface in beamline.models.responses">Response</a></pre>
-<div class="block">A refined <a href="Response.html" title="interface in beamline.models.responses"><code>Response</code></a> that can be rendered in Graphviz using the Dot
+<pre>public abstract class <span class="typeNameLabel">GraphvizResponse</span>
+extends <a href="Response.html" title="class in beamline.models.responses">Response</a></pre>
+<div class="block">A refined <a href="Response.html" title="class in beamline.models.responses"><code>Response</code></a> that can be rendered in Graphviz using the Dot
  language.</div>
 <dl>
 <dt><span class="simpleTagLabel">Author:</span></dt>
 <dd>Andrea Burattin</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../serialized-form.html#beamline.models.responses.GraphvizResponse">Serialized Form</a></dd>
 </dl>
 </li>
 </ul>
@@ -142,6 +157,27 @@ extends <a href="Response.html" title="interface in beamline.models.responses">R
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Constructor</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr class="altColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">GraphvizResponse</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+</section>
 <!-- ========== METHOD SUMMARY =========== -->
 <section role="region">
 <ul class="blockList">
@@ -157,13 +193,27 @@ extends <a href="Response.html" title="interface in beamline.models.responses">R
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code>beamline.graphviz.Dot</code></td>
+<td class="colFirst"><code>abstract beamline.graphviz.Dot</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#generateDot()">generateDot</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Returns the Dot representation of the response</div>
 </td>
 </tr>
 </table>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.beamline.models.responses.Response">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;beamline.models.responses.<a href="Response.html" title="class in beamline.models.responses">Response</a></h3>
+<code><a href="Response.html#getProcessedEvents()">getProcessedEvents</a>, <a href="Response.html#setProcessedEvents(java.lang.Long)">setProcessedEvents</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
+<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">toString</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></li>
+</ul>
 </li>
 </ul>
 </section>
@@ -173,6 +223,25 @@ extends <a href="Response.html" title="interface in beamline.models.responses">R
 <div class="details">
 <ul class="blockList">
 <li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a id="&lt;init&gt;()">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>GraphvizResponse</h4>
+<pre>public&nbsp;GraphvizResponse()</pre>
+</li>
+</ul>
+</li>
+</ul>
+</section>
 <!-- ============ METHOD DETAIL ========== -->
 <section role="region">
 <ul class="blockList">
@@ -186,7 +255,7 @@ extends <a href="Response.html" title="interface in beamline.models.responses">R
 <ul class="blockListLast">
 <li class="blockList">
 <h4>generateDot</h4>
-<pre class="methodSignature">beamline.graphviz.Dot&nbsp;generateDot()</pre>
+<pre class="methodSignature">public abstract&nbsp;beamline.graphviz.Dot&nbsp;generateDot()</pre>
 <div class="block">Returns the Dot representation of the response</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -248,13 +317,13 @@ extends <a href="Response.html" title="interface in beamline.models.responses">R
 <li>Summary:&nbsp;</li>
 <li>Nested&nbsp;|&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.detail">Method</a></li>
 </ul>
 </div>
diff --git a/beamline/models/responses/Response.html b/beamline/models/responses/Response.html
index 1cef222..dcdfd5f 100644
--- a/beamline/models/responses/Response.html
+++ b/beamline/models/responses/Response.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Response (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
@@ -27,6 +27,12 @@
     catch(err) {
     }
 //-->
+var data = {"i0":10,"i1":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
 var pathtoroot = "../../../";
 var useModuleDirectories = true;
 loadScripts(document, 'script');</script>
@@ -85,14 +91,14 @@ loadScripts(document, 'script');</script>
 <li>Summary:&nbsp;</li>
 <li>Nested&nbsp;|&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li>Method</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li>Method</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
 </ul>
 </div>
 <a id="skip.navbar.top">
@@ -111,26 +117,157 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <main role="main">
 <div class="header">
 <div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.models.responses</a></div>
-<h2 title="Interface Response" class="title">Interface Response</h2>
+<h2 title="Class Response" class="title">Class Response</h2>
 </div>
 <div class="contentContainer">
+<ul class="inheritance">
+<li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>beamline.models.responses.Response</li>
+</ul>
+</li>
+</ul>
 <div class="description">
 <ul class="blockList">
 <li class="blockList">
 <dl>
-<dt>All Known Subinterfaces:</dt>
-<dd><code><a href="GraphvizResponse.html" title="interface in beamline.models.responses">GraphvizResponse</a></code></dd>
+<dt>All Implemented Interfaces:</dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code></dd>
+</dl>
+<dl>
+<dt>Direct Known Subclasses:</dt>
+<dd><code><a href="DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a></code>, <code><a href="GraphvizResponse.html" title="class in beamline.models.responses">GraphvizResponse</a></code>, <code><a href="StringResponse.html" title="class in beamline.models.responses">StringResponse</a></code></dd>
 </dl>
 <hr>
-<pre>public interface <span class="typeNameLabel">Response</span></pre>
+<pre>public class <span class="typeNameLabel">Response</span>
+extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
+implements <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></pre>
 <div class="block">Marker interface used to define the type of the responses</div>
 <dl>
 <dt><span class="simpleTagLabel">Author:</span></dt>
 <dd>Andrea Burattin</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../serialized-form.html#beamline.models.responses.Response">Serialized Form</a></dd>
 </dl>
 </li>
 </ul>
 </div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Constructor</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr class="altColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">Response</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+</section>
+<!-- ========== METHOD SUMMARY =========== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Method</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getProcessedEvents()">getProcessedEvents</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setProcessedEvents(java.lang.Long)">setProcessedEvents</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&nbsp;processedEvents)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
+<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">toString</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</section>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a id="&lt;init&gt;()">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>Response</h4>
+<pre>public&nbsp;Response()</pre>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+<!-- ============ METHOD DETAIL ========== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a id="getProcessedEvents()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getProcessedEvents</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&nbsp;getProcessedEvents()</pre>
+</li>
+</ul>
+<a id="setProcessedEvents(java.lang.Long)">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>setProcessedEvents</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;setProcessedEvents&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&nbsp;processedEvents)</pre>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+</li>
+</ul>
+</div>
 </div>
 </main>
 <!-- ========= END OF CLASS DATA ========= -->
@@ -179,14 +316,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <li>Summary:&nbsp;</li>
 <li>Nested&nbsp;|&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li>Method</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li>Method</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
 </ul>
 </div>
 <a id="skip.navbar.bottom">
diff --git a/beamline/models/responses/StringResponse.html b/beamline/models/responses/StringResponse.html
new file mode 100644
index 0000000..9a3dcf0
--- /dev/null
+++ b/beamline/models/responses/StringResponse.html
@@ -0,0 +1,359 @@
+<!DOCTYPE HTML>
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>StringResponse (framework 0.1.0 API)</title>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta name="dc.created" content="2022-03-25">
+<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
+<link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
+<script type="text/javascript" src="../../../script.js"></script>
+<script type="text/javascript" src="../../../jquery/jszip/dist/jszip.min.js"></script>
+<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
+<!--[if IE]>
+<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
+<![endif]-->
+<script type="text/javascript" src="../../../jquery/jquery-3.5.1.js"></script>
+<script type="text/javascript" src="../../../jquery/jquery-ui.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="StringResponse (framework 0.1.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var data = {"i0":10,"i1":10,"i2":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+var pathtoroot = "../../../";
+var useModuleDirectories = true;
+loadScripts(document, 'script');</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<header role="banner">
+<nav role="navigation">
+<div class="fixedNav">
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a id="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a id="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../index.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/StringResponse.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
+</ul>
+<ul class="navListSearch">
+<li><label for="search">SEARCH:</label>
+<input type="text" id="search" value="search" disabled="disabled">
+<input type="reset" id="reset" value="reset" disabled="disabled">
+</li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a id="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+</div>
+<div class="navPadding">&nbsp;</div>
+<script type="text/javascript"><!--
+$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
+//-->
+</script>
+</nav>
+</header>
+<!-- ======== START OF CLASS DATA ======== -->
+<main role="main">
+<div class="header">
+<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.models.responses</a></div>
+<h2 title="Class StringResponse" class="title">Class StringResponse</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="Response.html" title="class in beamline.models.responses">beamline.models.responses.Response</a></li>
+<li>
+<ul class="inheritance">
+<li>beamline.models.responses.StringResponse</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code></dd>
+</dl>
+<hr>
+<pre>public class <span class="typeNameLabel">StringResponse</span>
+extends <a href="Response.html" title="class in beamline.models.responses">Response</a></pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../serialized-form.html#beamline.models.responses.StringResponse">Serialized Form</a></dd>
+</dl>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Constructor</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr class="altColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.lang.String)">StringResponse</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;str)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+</section>
+<!-- ========== METHOD SUMMARY =========== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Method</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#get()">get</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#set(java.lang.String)">set</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;str)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString()">toString</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.beamline.models.responses.Response">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;beamline.models.responses.<a href="Response.html" title="class in beamline.models.responses">Response</a></h3>
+<code><a href="Response.html#getProcessedEvents()">getProcessedEvents</a>, <a href="Response.html#setProcessedEvents(java.lang.Long)">setProcessedEvents</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
+<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</section>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a id="&lt;init&gt;(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>StringResponse</h4>
+<pre>public&nbsp;StringResponse&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;str)</pre>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+<!-- ============ METHOD DETAIL ========== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a id="get()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>get</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;get()</pre>
+</li>
+</ul>
+<a id="set(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>set</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;set&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;str)</pre>
+</li>
+</ul>
+<a id="toString()">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>toString</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;toString()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">toString</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+</li>
+</ul>
+</div>
+</div>
+</main>
+<!-- ========= END OF CLASS DATA ========= -->
+<footer role="contentinfo">
+<nav role="navigation">
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a id="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a id="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../index.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/StringResponse.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a id="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+</nav>
+<p class="legalCopy"><small>Copyright &#169; 2022. All rights reserved.</small></p>
+</footer>
+</body>
+</html>
diff --git a/beamline/models/algorithms/class-use/HookEventProcessing.html b/beamline/models/responses/class-use/DirectlyFollowsRelation.html
similarity index 67%
rename from beamline/models/algorithms/class-use/HookEventProcessing.html
rename to beamline/models/responses/class-use/DirectlyFollowsRelation.html
index c110857..7250326 100644
--- a/beamline/models/algorithms/class-use/HookEventProcessing.html
+++ b/beamline/models/responses/class-use/DirectlyFollowsRelation.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>Uses of Interface beamline.models.algorithms.HookEventProcessing (framework 0.1.0 API)</title>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>Uses of Class beamline.models.responses.DirectlyFollowsRelation (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
@@ -21,7 +21,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Interface beamline.models.algorithms.HookEventProcessing (framework 0.1.0 API)";
+            parent.document.title="Uses of Class beamline.models.responses.DirectlyFollowsRelation (framework 0.1.0 API)";
         }
     }
     catch(err) {
@@ -47,7 +47,7 @@ loadScripts(document, 'script');</script>
 <ul class="navList" title="Navigation">
 <li><a href="../../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../HookEventProcessing.html" title="interface in beamline.models.algorithms">Class</a></li>
+<li><a href="../DirectlyFollowsRelation.html" title="class in beamline.models.responses">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../../deprecated-list.html">Deprecated</a></li>
@@ -94,13 +94,13 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </header>
 <main role="main">
 <div class="header">
-<h2 title="Uses of Interface beamline.models.algorithms.HookEventProcessing" class="title">Uses of Interface<br>beamline.models.algorithms.HookEventProcessing</h2>
+<h2 title="Uses of Class beamline.models.responses.DirectlyFollowsRelation" class="title">Uses of Class<br>beamline.models.responses.DirectlyFollowsRelation</h2>
 </div>
 <div class="classUseContainer">
 <ul class="blockList">
 <li class="blockList">
 <table class="useSummary">
-<caption><span>Packages that use <a href="../HookEventProcessing.html" title="interface in beamline.models.algorithms">HookEventProcessing</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Packages that use <a href="../DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Package</th>
 <th class="colLast" scope="col">Description</th>
@@ -122,9 +122,9 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <section role="region"><a id="beamline.models.algorithms">
 <!--   -->
 </a>
-<h3>Uses of <a href="../HookEventProcessing.html" title="interface in beamline.models.algorithms">HookEventProcessing</a> in <a href="../package-summary.html">beamline.models.algorithms</a></h3>
+<h3>Uses of <a href="../DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a> in <a href="../../algorithms/package-summary.html">beamline.models.algorithms</a></h3>
 <table class="useSummary">
-<caption><span>Methods in <a href="../package-summary.html">beamline.models.algorithms</a> with parameters of type <a href="../HookEventProcessing.html" title="interface in beamline.models.algorithms">HookEventProcessing</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Methods in <a href="../../algorithms/package-summary.html">beamline.models.algorithms</a> that return <a href="../DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colSecond" scope="col">Method</th>
@@ -132,20 +132,9 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">StreamMiningAlgorithm.</span><code><span class="memberNameLink"><a href="../StreamMiningAlgorithm.html#setOnAfterEvent(beamline.models.algorithms.HookEventProcessing)">setOnAfterEvent</a></span>&#8203;(<a href="../HookEventProcessing.html" title="interface in beamline.models.algorithms">HookEventProcessing</a>&nbsp;onAfterEvent)</code></th>
-<td class="colLast">
-<div class="block">This method can be used to set a hook to a callback function to be
- executed after an event is processed</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">StreamMiningAlgorithm.</span><code><span class="memberNameLink"><a href="../StreamMiningAlgorithm.html#setOnBeforeEvent(beamline.models.algorithms.HookEventProcessing)">setOnBeforeEvent</a></span>&#8203;(<a href="../HookEventProcessing.html" title="interface in beamline.models.algorithms">HookEventProcessing</a>&nbsp;onBeforeEvent)</code></th>
-<td class="colLast">
-<div class="block">This method can be used to set a hook to a callback function to be
- executed before an event is processed</div>
-</td>
+<td class="colFirst"><code><a href="../DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a></code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">InfiniteSizeDirectlyFollowsMapper.</span><code><span class="memberNameLink"><a href="../../algorithms/InfiniteSizeDirectlyFollowsMapper.html#ingest(beamline.events.BEvent)">ingest</a></span>&#8203;(<a href="../../../events/BEvent.html" title="class in beamline.events">BEvent</a>&nbsp;event)</code></th>
+<td class="colLast">&nbsp;</td>
 </tr>
 </tbody>
 </table>
@@ -169,7 +158,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="navList" title="Navigation">
 <li><a href="../../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../HookEventProcessing.html" title="interface in beamline.models.algorithms">Class</a></li>
+<li><a href="../DirectlyFollowsRelation.html" title="class in beamline.models.responses">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../../deprecated-list.html">Deprecated</a></li>
diff --git a/beamline/models/responses/class-use/GraphvizResponse.html b/beamline/models/responses/class-use/GraphvizResponse.html
index 0480ad7..8045818 100644
--- a/beamline/models/responses/class-use/GraphvizResponse.html
+++ b/beamline/models/responses/class-use/GraphvizResponse.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>Uses of Interface beamline.models.responses.GraphvizResponse (framework 0.1.0 API)</title>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>Uses of Class beamline.models.responses.GraphvizResponse (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
@@ -21,7 +21,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Interface beamline.models.responses.GraphvizResponse (framework 0.1.0 API)";
+            parent.document.title="Uses of Class beamline.models.responses.GraphvizResponse (framework 0.1.0 API)";
         }
     }
     catch(err) {
@@ -47,7 +47,7 @@ loadScripts(document, 'script');</script>
 <ul class="navList" title="Navigation">
 <li><a href="../../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../GraphvizResponse.html" title="interface in beamline.models.responses">Class</a></li>
+<li><a href="../GraphvizResponse.html" title="class in beamline.models.responses">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../../deprecated-list.html">Deprecated</a></li>
@@ -94,7 +94,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </header>
 <main role="main">
 <div class="header">
-<h2 title="Uses of Interface beamline.models.responses.GraphvizResponse" class="title">Uses of Interface<br>beamline.models.responses.GraphvizResponse</h2>
+<h2 title="Uses of Class beamline.models.responses.GraphvizResponse" class="title">Uses of Class<br>beamline.models.responses.GraphvizResponse</h2>
 </div>
 <div class="classUseContainer">No usage of beamline.models.responses.GraphvizResponse</div>
 </main>
@@ -111,7 +111,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="navList" title="Navigation">
 <li><a href="../../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../GraphvizResponse.html" title="interface in beamline.models.responses">Class</a></li>
+<li><a href="../GraphvizResponse.html" title="class in beamline.models.responses">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../../deprecated-list.html">Deprecated</a></li>
diff --git a/beamline/models/responses/class-use/Response.html b/beamline/models/responses/class-use/Response.html
index f66d0d1..89f7c2d 100644
--- a/beamline/models/responses/class-use/Response.html
+++ b/beamline/models/responses/class-use/Response.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>Uses of Interface beamline.models.responses.Response (framework 0.1.0 API)</title>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>Uses of Class beamline.models.responses.Response (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
@@ -21,7 +21,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Interface beamline.models.responses.Response (framework 0.1.0 API)";
+            parent.document.title="Uses of Class beamline.models.responses.Response (framework 0.1.0 API)";
         }
     }
     catch(err) {
@@ -47,7 +47,7 @@ loadScripts(document, 'script');</script>
 <ul class="navList" title="Navigation">
 <li><a href="../../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../Response.html" title="interface in beamline.models.responses">Class</a></li>
+<li><a href="../Response.html" title="class in beamline.models.responses">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../../deprecated-list.html">Deprecated</a></li>
@@ -94,19 +94,26 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </header>
 <main role="main">
 <div class="header">
-<h2 title="Uses of Interface beamline.models.responses.Response" class="title">Uses of Interface<br>beamline.models.responses.Response</h2>
+<h2 title="Uses of Class beamline.models.responses.Response" class="title">Uses of Class<br>beamline.models.responses.Response</h2>
 </div>
 <div class="classUseContainer">
 <ul class="blockList">
 <li class="blockList">
 <table class="useSummary">
-<caption><span>Packages that use <a href="../Response.html" title="interface in beamline.models.responses">Response</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Packages that use <a href="../Response.html" title="class in beamline.models.responses">Response</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Package</th>
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tbody>
 <tr class="altColor">
+<th class="colFirst" scope="row"><a href="#beamline.models.algorithms">beamline.models.algorithms</a></th>
+<td class="colLast">
+<div class="block">This package contains all classes of the framework necessary to have mining
+ algorithms functioning.</div>
+</td>
+</tr>
+<tr class="rowColor">
 <th class="colFirst" scope="row"><a href="#beamline.models.responses">beamline.models.responses</a></th>
 <td class="colLast">
 <div class="block">This package contains all classes of the framework necessary to handle the
@@ -119,26 +126,63 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <li class="blockList">
 <ul class="blockList">
 <li class="blockList">
+<section role="region"><a id="beamline.models.algorithms">
+<!--   -->
+</a>
+<h3>Uses of <a href="../Response.html" title="class in beamline.models.responses">Response</a> in <a href="../../algorithms/package-summary.html">beamline.models.algorithms</a></h3>
+<table class="useSummary">
+<caption><span>Classes in <a href="../../algorithms/package-summary.html">beamline.models.algorithms</a> with type parameters of type <a href="../Response.html" title="class in beamline.models.responses">Response</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Class</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a>&lt;T extends <a href="../Response.html" title="class in beamline.models.responses">Response</a>&gt;</span></code></th>
+<td class="colLast">
+<div class="block">This abstract class defines the root of the mining algorithms hierarchy.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</section>
+</li>
+<li class="blockList">
 <section role="region"><a id="beamline.models.responses">
 <!--   -->
 </a>
-<h3>Uses of <a href="../Response.html" title="interface in beamline.models.responses">Response</a> in <a href="../package-summary.html">beamline.models.responses</a></h3>
+<h3>Uses of <a href="../Response.html" title="class in beamline.models.responses">Response</a> in <a href="../package-summary.html">beamline.models.responses</a></h3>
 <table class="useSummary">
-<caption><span>Subinterfaces of <a href="../Response.html" title="interface in beamline.models.responses">Response</a> in <a href="../package-summary.html">beamline.models.responses</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Subclasses of <a href="../Response.html" title="class in beamline.models.responses">Response</a> in <a href="../package-summary.html">beamline.models.responses</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colSecond" scope="col">Interface</th>
+<th class="colSecond" scope="col">Class</th>
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>interface&nbsp;</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../GraphvizResponse.html" title="interface in beamline.models.responses">GraphvizResponse</a></span></code></th>
+<td class="colFirst"><code>class&nbsp;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a></span></code></th>
+<td class="colLast">
+<div class="block">This class represents a directly follows relation as produced by
+ <a href="../../algorithms/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms"><code>InfiniteSizeDirectlyFollowsMapper</code></a>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../GraphvizResponse.html" title="class in beamline.models.responses">GraphvizResponse</a></span></code></th>
 <td class="colLast">
-<div class="block">A refined <a href="../Response.html" title="interface in beamline.models.responses"><code>Response</code></a> that can be rendered in Graphviz using the Dot
+<div class="block">A refined <a href="../Response.html" title="class in beamline.models.responses"><code>Response</code></a> that can be rendered in Graphviz using the Dot
  language.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../StringResponse.html" title="class in beamline.models.responses">StringResponse</a></span></code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </section>
@@ -161,7 +205,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="navList" title="Navigation">
 <li><a href="../../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../Response.html" title="interface in beamline.models.responses">Class</a></li>
+<li><a href="../Response.html" title="class in beamline.models.responses">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../../deprecated-list.html">Deprecated</a></li>
diff --git a/beamline/utils/package-use.html b/beamline/models/responses/class-use/StringResponse.html
similarity index 55%
rename from beamline/utils/package-use.html
rename to beamline/models/responses/class-use/StringResponse.html
index bc6e32e..de222e4 100644
--- a/beamline/utils/package-use.html
+++ b/beamline/models/responses/class-use/StringResponse.html
@@ -2,32 +2,32 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>Uses of Package beamline.utils (framework 0.1.0 API)</title>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>Uses of Class beamline.models.responses.StringResponse (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
-<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
-<link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
-<script type="text/javascript" src="../../script.js"></script>
-<script type="text/javascript" src="../../jquery/jszip/dist/jszip.min.js"></script>
-<script type="text/javascript" src="../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
+<meta name="dc.created" content="2022-03-25">
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+<script type="text/javascript" src="../../../../jquery/jszip/dist/jszip.min.js"></script>
+<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
 <!--[if IE]>
-<script type="text/javascript" src="../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
+<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
 <![endif]-->
-<script type="text/javascript" src="../../jquery/jquery-3.5.1.js"></script>
-<script type="text/javascript" src="../../jquery/jquery-ui.js"></script>
+<script type="text/javascript" src="../../../../jquery/jquery-3.5.1.js"></script>
+<script type="text/javascript" src="../../../../jquery/jquery-ui.js"></script>
 </head>
 <body>
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Package beamline.utils (framework 0.1.0 API)";
+            parent.document.title="Uses of Class beamline.models.responses.StringResponse (framework 0.1.0 API)";
         }
     }
     catch(err) {
     }
 //-->
-var pathtoroot = "../../";
+var pathtoroot = "../../../../";
 var useModuleDirectories = true;
 loadScripts(document, 'script');</script>
 <noscript>
@@ -45,19 +45,19 @@ loadScripts(document, 'script');</script>
 <!--   -->
 </a>
 <ul class="navList" title="Navigation">
-<li><a href="../../index.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li>Class</li>
+<li><a href="../../../../index.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../StringResponse.html" title="class in beamline.models.responses">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../index-all.html">Index</a></li>
-<li><a href="../../help-doc.html">Help</a></li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
 </ul>
 </div>
 <div class="subNav">
 <ul class="navList" id="allclasses_navbar_top">
-<li><a href="../../allclasses.html">All&nbsp;Classes</a></li>
+<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
 </ul>
 <ul class="navListSearch">
 <li><label for="search">SEARCH:</label>
@@ -94,9 +94,9 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </header>
 <main role="main">
 <div class="header">
-<h1 title="Uses of Package beamline.utils" class="title">Uses of Package<br>beamline.utils</h1>
+<h2 title="Uses of Class beamline.models.responses.StringResponse" class="title">Uses of Class<br>beamline.models.responses.StringResponse</h2>
 </div>
-<div class="contentContainer">No usage of beamline.utils</div>
+<div class="classUseContainer">No usage of beamline.models.responses.StringResponse</div>
 </main>
 <footer role="contentinfo">
 <nav role="navigation">
@@ -109,19 +109,19 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <!--   -->
 </a>
 <ul class="navList" title="Navigation">
-<li><a href="../../index.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li>Class</li>
+<li><a href="../../../../index.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../StringResponse.html" title="class in beamline.models.responses">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../index-all.html">Index</a></li>
-<li><a href="../../help-doc.html">Help</a></li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
 </ul>
 </div>
 <div class="subNav">
 <ul class="navList" id="allclasses_navbar_bottom">
-<li><a href="../../allclasses.html">All&nbsp;Classes</a></li>
+<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
 </ul>
 <div>
 <script type="text/javascript"><!--
diff --git a/beamline/models/responses/package-summary.html b/beamline/models/responses/package-summary.html
index c2e6cef..38db09f 100644
--- a/beamline/models/responses/package-summary.html
+++ b/beamline/models/responses/package-summary.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>beamline.models.responses (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
@@ -106,25 +106,36 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="blockList">
 <li class="blockList">
 <table class="typeSummary">
-<caption><span>Interface Summary</span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
-<th class="colFirst" scope="col">Interface</th>
+<th class="colFirst" scope="col">Class</th>
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tbody>
 <tr class="altColor">
-<th class="colFirst" scope="row"><a href="GraphvizResponse.html" title="interface in beamline.models.responses">GraphvizResponse</a></th>
+<th class="colFirst" scope="row"><a href="DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a></th>
 <td class="colLast">
-<div class="block">A refined <a href="Response.html" title="interface in beamline.models.responses"><code>Response</code></a> that can be rendered in Graphviz using the Dot
- language.</div>
+<div class="block">This class represents a directly follows relation as produced by
+ <a href="../algorithms/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms"><code>InfiniteSizeDirectlyFollowsMapper</code></a>.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<th class="colFirst" scope="row"><a href="Response.html" title="interface in beamline.models.responses">Response</a></th>
+<th class="colFirst" scope="row"><a href="GraphvizResponse.html" title="class in beamline.models.responses">GraphvizResponse</a></th>
+<td class="colLast">
+<div class="block">A refined <a href="Response.html" title="class in beamline.models.responses"><code>Response</code></a> that can be rendered in Graphviz using the Dot
+ language.</div>
+</td>
+</tr>
+<tr class="altColor">
+<th class="colFirst" scope="row"><a href="Response.html" title="class in beamline.models.responses">Response</a></th>
 <td class="colLast">
 <div class="block">Marker interface used to define the type of the responses</div>
 </td>
 </tr>
+<tr class="rowColor">
+<th class="colFirst" scope="row"><a href="StringResponse.html" title="class in beamline.models.responses">StringResponse</a></th>
+<td class="colLast">&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/beamline/models/responses/package-tree.html b/beamline/models/responses/package-tree.html
index 5045075..94f5c70 100644
--- a/beamline/models/responses/package-tree.html
+++ b/beamline/models/responses/package-tree.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>beamline.models.responses Class Hierarchy (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
@@ -102,11 +102,17 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </div>
 <div class="contentContainer">
 <section role="region">
-<h2 title="Interface Hierarchy">Interface Hierarchy</h2>
+<h2 title="Class Hierarchy">Class Hierarchy</h2>
 <ul>
-<li class="circle">beamline.models.responses.<a href="Response.html" title="interface in beamline.models.responses"><span class="typeNameLink">Response</span></a>
+<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink"><span class="typeNameLink">Object</span></a>
 <ul>
-<li class="circle">beamline.models.responses.<a href="GraphvizResponse.html" title="interface in beamline.models.responses"><span class="typeNameLink">GraphvizResponse</span></a></li>
+<li class="circle">beamline.models.responses.<a href="Response.html" title="class in beamline.models.responses"><span class="typeNameLink">Response</span></a> (implements java.io.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>)
+<ul>
+<li class="circle">beamline.models.responses.<a href="DirectlyFollowsRelation.html" title="class in beamline.models.responses"><span class="typeNameLink">DirectlyFollowsRelation</span></a></li>
+<li class="circle">beamline.models.responses.<a href="GraphvizResponse.html" title="class in beamline.models.responses"><span class="typeNameLink">GraphvizResponse</span></a></li>
+<li class="circle">beamline.models.responses.<a href="StringResponse.html" title="class in beamline.models.responses"><span class="typeNameLink">StringResponse</span></a></li>
+</ul>
+</li>
 </ul>
 </li>
 </ul>
diff --git a/beamline/models/responses/package-use.html b/beamline/models/responses/package-use.html
index 4ada7a9..5edcdc3 100644
--- a/beamline/models/responses/package-use.html
+++ b/beamline/models/responses/package-use.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Uses of Package beamline.models.responses (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
@@ -107,6 +107,13 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </tr>
 <tbody>
 <tr class="altColor">
+<th class="colFirst" scope="row"><a href="#beamline.models.algorithms">beamline.models.algorithms</a></th>
+<td class="colLast">
+<div class="block">This package contains all classes of the framework necessary to have mining
+ algorithms functioning.</div>
+</td>
+</tr>
+<tr class="rowColor">
 <th class="colFirst" scope="row"><a href="#beamline.models.responses">beamline.models.responses</a></th>
 <td class="colLast">
 <div class="block">This package contains all classes of the framework necessary to handle the
@@ -116,6 +123,32 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </tbody>
 </table>
 </li>
+<li class="blockList"><a id="beamline.models.algorithms">
+<!--   -->
+</a>
+<table class="useSummary">
+<caption><span>Classes in <a href="package-summary.html">beamline.models.responses</a> used by <a href="../algorithms/package-summary.html">beamline.models.algorithms</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Class</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<th class="colFirst" scope="row"><a href="class-use/DirectlyFollowsRelation.html#beamline.models.algorithms">DirectlyFollowsRelation</a></th>
+<td class="colLast">
+<div class="block">This class represents a directly follows relation as produced by
+ <a href="../algorithms/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms"><code>InfiniteSizeDirectlyFollowsMapper</code></a>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<th class="colFirst" scope="row"><a href="class-use/Response.html#beamline.models.algorithms">Response</a></th>
+<td class="colLast">
+<div class="block">Marker interface used to define the type of the responses</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
 <li class="blockList"><a id="beamline.models.responses">
 <!--   -->
 </a>
diff --git a/beamline/mappers/DirectlyFollowsRelation.html b/beamline/sources/BeamlineAbstractSource.html
similarity index 69%
rename from beamline/mappers/DirectlyFollowsRelation.html
rename to beamline/sources/BeamlineAbstractSource.html
index 8e4e5b7..c8d4360 100644
--- a/beamline/mappers/DirectlyFollowsRelation.html
+++ b/beamline/sources/BeamlineAbstractSource.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>DirectlyFollowsRelation (framework 0.1.0 API)</title>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>BeamlineAbstractSource (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -21,13 +21,13 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="DirectlyFollowsRelation (framework 0.1.0 API)";
+            parent.document.title="BeamlineAbstractSource (framework 0.1.0 API)";
         }
     }
     catch(err) {
     }
 //-->
-var data = {"i0":10,"i1":10,"i2":10};
+var data = {"i0":10,"i1":10};
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -54,7 +54,7 @@ loadScripts(document, 'script');</script>
 <li><a href="../../index.html">Overview</a></li>
 <li><a href="package-summary.html">Package</a></li>
 <li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/DirectlyFollowsRelation.html">Use</a></li>
+<li><a href="class-use/BeamlineAbstractSource.html">Use</a></li>
 <li><a href="package-tree.html">Tree</a></li>
 <li><a href="../../deprecated-list.html">Deprecated</a></li>
 <li><a href="../../index-all.html">Index</a></li>
@@ -89,7 +89,7 @@ loadScripts(document, 'script');</script>
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
@@ -116,29 +116,50 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <!-- ======== START OF CLASS DATA ======== -->
 <main role="main">
 <div class="header">
-<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.mappers</a></div>
-<h2 title="Class DirectlyFollowsRelation" class="title">Class DirectlyFollowsRelation</h2>
+<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.sources</a></div>
+<h2 title="Class BeamlineAbstractSource" class="title">Class BeamlineAbstractSource</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
 <li>
 <ul class="inheritance">
-<li>beamline.mappers.DirectlyFollowsRelation</li>
+<li>org.apache.flink.api.common.functions.AbstractRichFunction</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.flink.streaming.api.functions.source.RichSourceFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li>beamline.sources.BeamlineAbstractSource</li>
+</ul>
+</li>
+</ul>
+</li>
 </ul>
 </li>
 </ul>
 <div class="description">
 <ul class="blockList">
 <li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code>, <code>org.apache.flink.api.common.functions.Function</code>, <code>org.apache.flink.api.common.functions.RichFunction</code>, <code>org.apache.flink.streaming.api.functions.source.SourceFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</code></dd>
+</dl>
+<dl>
+<dt>Direct Known Subclasses:</dt>
+<dd><code><a href="CSVLogSource.html" title="class in beamline.sources">CSVLogSource</a></code>, <code><a href="MQTTXesSource.html" title="class in beamline.sources">MQTTXesSource</a></code>, <code><a href="StringTestSource.html" title="class in beamline.sources">StringTestSource</a></code>, <code><a href="XesLogSource.html" title="class in beamline.sources">XesLogSource</a></code></dd>
+</dl>
 <hr>
-<pre>public class <span class="typeNameLabel">DirectlyFollowsRelation</span>
-extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></pre>
-<div class="block">This class represents a directly follows relation as produced by
- <a href="InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.mappers"><code>InfiniteSizeDirectlyFollowsMapper</code></a>.</div>
+<pre>public abstract class <span class="typeNameLabel">BeamlineAbstractSource</span>
+extends org.apache.flink.streaming.api.functions.source.RichSourceFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</pre>
+<div class="block">This interface is supposed to bind the type of <code>RichSourceFunction</code> to
+ <a href="../events/BEvent.html" title="class in beamline.events"><code>BEvent</code></a> and to provide minimal infrastructure to check if the sourece
+ is currently running.</div>
 <dl>
 <dt><span class="simpleTagLabel">Author:</span></dt>
 <dd>Andrea Burattin</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../serialized-form.html#beamline.sources.BeamlineAbstractSource">Serialized Form</a></dd>
 </dl>
 </li>
 </ul>
@@ -146,6 +167,23 @@ extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/ja
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a id="nested.classes.inherited.from.class.org.apache.flink.streaming.api.functions.source.SourceFunction">
+<!--   -->
+</a>
+<h3>Nested classes/interfaces inherited from interface&nbsp;org.apache.flink.streaming.api.functions.source.SourceFunction</h3>
+<code>org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext&lt;T extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&gt;</code></li>
+</ul>
+</li>
+</ul>
+</section>
 <!-- ======== CONSTRUCTOR SUMMARY ======== -->
 <section role="region">
 <ul class="blockList">
@@ -160,12 +198,8 @@ extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/ja
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tr class="altColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.lang.String,org.deckfour.xes.model.XEvent,org.deckfour.xes.model.XEvent)">DirectlyFollowsRelation</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId,
-                       org.deckfour.xes.model.XEvent&nbsp;first,
-                       org.deckfour.xes.model.XEvent&nbsp;second)</code></th>
-<td class="colLast">
-<div class="block">Constructor</div>
-</td>
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">BeamlineAbstractSource</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -186,34 +220,39 @@ extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/ja
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCaseId()">getCaseId</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns the case id this directly follows relation belongs to</div>
-</td>
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#cancel()">cancel</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
 </tr>
 <tr id="i1" class="rowColor">
-<td class="colFirst"><code>org.deckfour.xes.model.XEvent</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getFirst()">getFirst</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns the first event</div>
-</td>
-</tr>
-<tr id="i2" class="altColor">
-<td class="colFirst"><code>org.deckfour.xes.model.XEvent</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getSecond()">getSecond</a></span>()</code></th>
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isRunning()">isRunning</a></span>()</code></th>
 <td class="colLast">
-<div class="block">Returns the second event</div>
+<div class="block">Returns if the source is still generting events</div>
 </td>
 </tr>
 </table>
 <ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.org.apache.flink.api.common.functions.AbstractRichFunction">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.flink.api.common.functions.AbstractRichFunction</h3>
+<code>close, getIterationRuntimeContext, getRuntimeContext, open, setRuntimeContext</code></li>
+</ul>
+<ul class="blockList">
 <li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
 <code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">toString</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></li>
 </ul>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.org.apache.flink.streaming.api.functions.source.SourceFunction">
+<!--   -->
+</a>
+<h3>Methods inherited from interface&nbsp;org.apache.flink.streaming.api.functions.source.SourceFunction</h3>
+<code>run</code></li>
+</ul>
 </li>
 </ul>
 </section>
@@ -230,22 +269,13 @@ extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/ja
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a id="&lt;init&gt;(java.lang.String,org.deckfour.xes.model.XEvent,org.deckfour.xes.model.XEvent)">
+<a id="&lt;init&gt;()">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>DirectlyFollowsRelation</h4>
-<pre>public&nbsp;DirectlyFollowsRelation&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId,
-                               org.deckfour.xes.model.XEvent&nbsp;first,
-                               org.deckfour.xes.model.XEvent&nbsp;second)</pre>
-<div class="block">Constructor</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>caseId</code> - the case id</dd>
-<dd><code>first</code> - the first event</dd>
-<dd><code>second</code> - the second event</dd>
-</dl>
+<h4>BeamlineAbstractSource</h4>
+<pre>public&nbsp;BeamlineAbstractSource()</pre>
 </li>
 </ul>
 </li>
@@ -258,46 +288,27 @@ extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/ja
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a id="getCaseId()">
+<a id="isRunning()">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>getCaseId</h4>
-<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;getCaseId()</pre>
-<div class="block">Returns the case id this directly follows relation belongs to</div>
+<h4>isRunning</h4>
+<pre class="methodSignature">public&nbsp;boolean&nbsp;isRunning()</pre>
+<div class="block">Returns if the source is still generting events</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>the case id</dd>
+<dd>whether the current source is still running or not</dd>
 </dl>
 </li>
 </ul>
-<a id="getFirst()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getFirst</h4>
-<pre class="methodSignature">public&nbsp;org.deckfour.xes.model.XEvent&nbsp;getFirst()</pre>
-<div class="block">Returns the first event</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the first event</dd>
-</dl>
-</li>
-</ul>
-<a id="getSecond()">
+<a id="cancel()">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>getSecond</h4>
-<pre class="methodSignature">public&nbsp;org.deckfour.xes.model.XEvent&nbsp;getSecond()</pre>
-<div class="block">Returns the second event</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the second event</dd>
-</dl>
+<h4>cancel</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;cancel()</pre>
 </li>
 </ul>
 </li>
@@ -323,7 +334,7 @@ extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/ja
 <li><a href="../../index.html">Overview</a></li>
 <li><a href="package-summary.html">Package</a></li>
 <li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/DirectlyFollowsRelation.html">Use</a></li>
+<li><a href="class-use/BeamlineAbstractSource.html">Use</a></li>
 <li><a href="package-tree.html">Tree</a></li>
 <li><a href="../../deprecated-list.html">Deprecated</a></li>
 <li><a href="../../index-all.html">Index</a></li>
@@ -352,7 +363,7 @@ extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/ja
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
diff --git a/beamline/mappers/InfiniteSizeDirectlyFollowsMapper.html b/beamline/sources/CSVLogSource.ParserConfiguration.html
similarity index 75%
rename from beamline/mappers/InfiniteSizeDirectlyFollowsMapper.html
rename to beamline/sources/CSVLogSource.ParserConfiguration.html
index c8aca98..174c6a5 100644
--- a/beamline/mappers/InfiniteSizeDirectlyFollowsMapper.html
+++ b/beamline/sources/CSVLogSource.ParserConfiguration.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>InfiniteSizeDirectlyFollowsMapper (framework 0.1.0 API)</title>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>CSVLogSource.ParserConfiguration (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -21,7 +21,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="InfiniteSizeDirectlyFollowsMapper (framework 0.1.0 API)";
+            parent.document.title="CSVLogSource.ParserConfiguration (framework 0.1.0 API)";
         }
     }
     catch(err) {
@@ -54,7 +54,7 @@ loadScripts(document, 'script');</script>
 <li><a href="../../index.html">Overview</a></li>
 <li><a href="package-summary.html">Package</a></li>
 <li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/InfiniteSizeDirectlyFollowsMapper.html">Use</a></li>
+<li><a href="class-use/CSVLogSource.ParserConfiguration.html">Use</a></li>
 <li><a href="package-tree.html">Tree</a></li>
 <li><a href="../../deprecated-list.html">Deprecated</a></li>
 <li><a href="../../index-all.html">Index</a></li>
@@ -116,15 +116,15 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <!-- ======== START OF CLASS DATA ======== -->
 <main role="main">
 <div class="header">
-<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.mappers</a></div>
-<h2 title="Class InfiniteSizeDirectlyFollowsMapper" class="title">Class InfiniteSizeDirectlyFollowsMapper</h2>
+<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.sources</a></div>
+<h2 title="Class CSVLogSource.ParserConfiguration" class="title">Class CSVLogSource.ParserConfiguration</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
 <li>
 <ul class="inheritance">
-<li>beamline.mappers.InfiniteSizeDirectlyFollowsMapper</li>
+<li>beamline.sources.CSVLogSource.ParserConfiguration</li>
 </ul>
 </li>
 </ul>
@@ -133,23 +133,22 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <li class="blockList">
 <dl>
 <dt>All Implemented Interfaces:</dt>
-<dd><code>io.reactivex.rxjava3.functions.Function&lt;org.deckfour.xes.model.XTrace,&#8203;io.reactivex.rxjava3.core.ObservableSource&lt;<a href="DirectlyFollowsRelation.html" title="class in beamline.mappers">DirectlyFollowsRelation</a>&gt;&gt;</code></dd>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code></dd>
+</dl>
+<dl>
+<dt>Enclosing class:</dt>
+<dd><a href="CSVLogSource.html" title="class in beamline.sources">CSVLogSource</a></dd>
 </dl>
 <hr>
-<pre>public class <span class="typeNameLabel">InfiniteSizeDirectlyFollowsMapper</span>
+<pre>public static class <span class="typeNameLabel">CSVLogSource.ParserConfiguration</span>
 extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
-implements io.reactivex.rxjava3.functions.Function&lt;org.deckfour.xes.model.XTrace,&#8203;io.reactivex.rxjava3.core.ObservableSource&lt;<a href="DirectlyFollowsRelation.html" title="class in beamline.mappers">DirectlyFollowsRelation</a>&gt;&gt;</pre>
-<div class="block">This mapper transforms a stream of <code>XTrace</code>s into a stream of
- <a href="DirectlyFollowsRelation.html" title="class in beamline.mappers"><code>DirectlyFollowsRelation</code></a>s. It transforms each pair of consequent
- events appearing in the same case as a directly follows operator (generating
- an object with type <a href="DirectlyFollowsRelation.html" title="class in beamline.mappers"><code>DirectlyFollowsRelation</code></a>).
- 
- <p>
- This mapper is called infinite because it's memory footprint will grow as the
- number of case ids grows as well.</div>
+implements <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></pre>
+<div class="block">This class is used to configure the parser of the CSV</div>
 <dl>
 <dt><span class="simpleTagLabel">Author:</span></dt>
 <dd>Andrea Burattin</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../serialized-form.html#beamline.sources.CSVLogSource.ParserConfiguration">Serialized Form</a></dd>
 </dl>
 </li>
 </ul>
@@ -171,7 +170,7 @@ implements io.reactivex.rxjava3.functions.Function&lt;org.deckfour.xes.model.XTr
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tr class="altColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">InfiniteSizeDirectlyFollowsMapper</a></span>()</code></th>
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">ParserConfiguration</a></span>()</code></th>
 <td class="colLast">&nbsp;</td>
 </tr>
 </table>
@@ -193,9 +192,11 @@ implements io.reactivex.rxjava3.functions.Function&lt;org.deckfour.xes.model.XTr
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code>@NonNull io.reactivex.rxjava3.core.ObservableSource&lt;<a href="DirectlyFollowsRelation.html" title="class in beamline.mappers">DirectlyFollowsRelation</a>&gt;</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#apply(org.deckfour.xes.model.XTrace)">apply</a></span>&#8203;(@NonNull org.deckfour.xes.model.XTrace&nbsp;t)</code></th>
-<td class="colLast">&nbsp;</td>
+<td class="colFirst"><code><a href="CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">CSVLogSource.ParserConfiguration</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#withSeparator(char)">withSeparator</a></span>&#8203;(char&nbsp;separator)</code></th>
+<td class="colLast">
+<div class="block">Configures the fields separator</div>
+</td>
 </tr>
 </table>
 <ul class="blockList">
@@ -226,8 +227,8 @@ implements io.reactivex.rxjava3.functions.Function&lt;org.deckfour.xes.model.XTr
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>InfiniteSizeDirectlyFollowsMapper</h4>
-<pre>public&nbsp;InfiniteSizeDirectlyFollowsMapper()</pre>
+<h4>ParserConfiguration</h4>
+<pre>public&nbsp;ParserConfiguration()</pre>
 </li>
 </ul>
 </li>
@@ -240,21 +241,19 @@ implements io.reactivex.rxjava3.functions.Function&lt;org.deckfour.xes.model.XTr
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a id="apply(org.deckfour.xes.model.XTrace)">
+<a id="withSeparator(char)">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>apply</h4>
-<pre class="methodSignature">@NonNull
-public&nbsp;@NonNull io.reactivex.rxjava3.core.ObservableSource&lt;<a href="DirectlyFollowsRelation.html" title="class in beamline.mappers">DirectlyFollowsRelation</a>&gt;&nbsp;apply&#8203;(@NonNull
-                                                                                          @NonNull org.deckfour.xes.model.XTrace&nbsp;t)
-                                                                                   throws <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Throwable</a></pre>
+<h4>withSeparator</h4>
+<pre class="methodSignature">public&nbsp;<a href="CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">CSVLogSource.ParserConfiguration</a>&nbsp;withSeparator&#8203;(char&nbsp;separator)</pre>
+<div class="block">Configures the fields separator</div>
 <dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code>apply</code>&nbsp;in interface&nbsp;<code>io.reactivex.rxjava3.functions.Function&lt;org.deckfour.xes.model.XTrace,&#8203;io.reactivex.rxjava3.core.ObservableSource&lt;<a href="DirectlyFollowsRelation.html" title="class in beamline.mappers">DirectlyFollowsRelation</a>&gt;&gt;</code></dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Throwable</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>separator</code> - the separator for the lines' fields</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the parser configuration object</dd>
 </dl>
 </li>
 </ul>
@@ -281,7 +280,7 @@ public&nbsp;@NonNull io.reactivex.rxjava3.core.ObservableSource&lt;<a href="Dire
 <li><a href="../../index.html">Overview</a></li>
 <li><a href="package-summary.html">Package</a></li>
 <li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/InfiniteSizeDirectlyFollowsMapper.html">Use</a></li>
+<li><a href="class-use/CSVLogSource.ParserConfiguration.html">Use</a></li>
 <li><a href="package-tree.html">Tree</a></li>
 <li><a href="../../deprecated-list.html">Deprecated</a></li>
 <li><a href="../../index-all.html">Index</a></li>
diff --git a/beamline/sources/CSVLogSource.html b/beamline/sources/CSVLogSource.html
index c2fa5c8..89ea273 100644
--- a/beamline/sources/CSVLogSource.html
+++ b/beamline/sources/CSVLogSource.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>CSVLogSource (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -27,7 +27,7 @@
     catch(err) {
     }
 //-->
-var data = {"i0":10,"i1":10};
+var data = {"i0":10};
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -89,7 +89,7 @@ loadScripts(document, 'script');</script>
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
@@ -124,26 +124,42 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
 <li>
 <ul class="inheritance">
+<li>org.apache.flink.api.common.functions.AbstractRichFunction</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.flink.streaming.api.functions.source.RichSourceFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li><a href="BeamlineAbstractSource.html" title="class in beamline.sources">beamline.sources.BeamlineAbstractSource</a></li>
+<li>
+<ul class="inheritance">
 <li>beamline.sources.CSVLogSource</li>
 </ul>
 </li>
 </ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
 <div class="description">
 <ul class="blockList">
 <li class="blockList">
 <dl>
 <dt>All Implemented Interfaces:</dt>
-<dd><code><a href="Source.html" title="interface in beamline.sources">Source</a>&lt;org.deckfour.xes.model.XTrace&gt;</code>, <code><a href="XesSource.html" title="interface in beamline.sources">XesSource</a></code></dd>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code>, <code>org.apache.flink.api.common.functions.Function</code>, <code>org.apache.flink.api.common.functions.RichFunction</code>, <code>org.apache.flink.streaming.api.functions.source.SourceFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</code></dd>
 </dl>
 <hr>
 <pre>public class <span class="typeNameLabel">CSVLogSource</span>
-extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
-implements <a href="XesSource.html" title="interface in beamline.sources">XesSource</a></pre>
-<div class="block">This implementation of a <a href="XesSource.html" title="interface in beamline.sources"><code>XesSource</code></a> produces events according to the
- events contained in a CSV file. This source produces a cold observable.</div>
+extends <a href="BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a></pre>
+<div class="block">This implementation of a <a href="BeamlineAbstractSource.html" title="class in beamline.sources"><code>BeamlineAbstractSource</code></a> produces events
+ according to the events contained in a CSV file.</div>
 <dl>
 <dt><span class="simpleTagLabel">Author:</span></dt>
 <dd>Andrea Burattin</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../serialized-form.html#beamline.sources.CSVLogSource">Serialized Form</a></dd>
 </dl>
 </li>
 </ul>
@@ -151,6 +167,38 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Class</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">CSVLogSource.ParserConfiguration</a></span></code></th>
+<td class="colLast">
+<div class="block">This class is used to configure the parser of the CSV</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a id="nested.classes.inherited.from.class.org.apache.flink.streaming.api.functions.source.SourceFunction">
+<!--   -->
+</a>
+<h3>Nested classes/interfaces inherited from interface&nbsp;org.apache.flink.streaming.api.functions.source.SourceFunction</h3>
+<code>org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext&lt;T extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&gt;</code></li>
+</ul>
+</li>
+</ul>
+</section>
 <!-- ======== CONSTRUCTOR SUMMARY ======== -->
 <section role="region">
 <ul class="blockList">
@@ -173,10 +221,10 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
 </td>
 </tr>
 <tr class="rowColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.lang.String,int,int,com.opencsv.CSVParser)">CSVLogSource</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;filename,
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.lang.String,int,int,beamline.sources.CSVLogSource.ParserConfiguration)">CSVLogSource</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;filename,
             int&nbsp;caseIdColumn,
             int&nbsp;activityNameColumn,
-            com.opencsv.CSVParser&nbsp;parser)</code></th>
+            <a href="CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">CSVLogSource.ParserConfiguration</a>&nbsp;parserConfiguration)</code></th>
 <td class="colLast">
 <div class="block">Constructs the source by providing a CSV parser.</div>
 </td>
@@ -200,22 +248,26 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code>io.reactivex.rxjava3.core.Observable&lt;org.deckfour.xes.model.XTrace&gt;</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getObservable()">getObservable</a></span>()</code></th>
-<td class="colLast">
-<div class="block">This method returns the observable created by the source.</div>
-</td>
-</tr>
-<tr id="i1" class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#prepare()">prepare</a></span>()</code></th>
-<td class="colLast">
-<div class="block">This method is supposed to be called before the <a href="Source.html#getObservable()"><code>Source.getObservable()</code></a>
- one: it is in charge of preparing the source to be processed.</div>
-</td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)">run</a></span>&#8203;(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;&nbsp;ctx)</code></th>
+<td class="colLast">&nbsp;</td>
 </tr>
 </table>
 <ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.beamline.sources.BeamlineAbstractSource">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;beamline.sources.<a href="BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a></h3>
+<code><a href="BeamlineAbstractSource.html#cancel()">cancel</a>, <a href="BeamlineAbstractSource.html#isRunning()">isRunning</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.org.apache.flink.api.common.functions.AbstractRichFunction">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.flink.api.common.functions.AbstractRichFunction</h3>
+<code>close, getIterationRuntimeContext, getRuntimeContext, open, setRuntimeContext</code></li>
+</ul>
+<ul class="blockList">
 <li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
 <!--   -->
 </a>
@@ -238,7 +290,7 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a id="&lt;init&gt;(java.lang.String,int,int,com.opencsv.CSVParser)">
+<a id="&lt;init&gt;(java.lang.String,int,int,beamline.sources.CSVLogSource.ParserConfiguration)">
 <!--   -->
 </a>
 <ul class="blockList">
@@ -247,17 +299,8 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
 <pre>public&nbsp;CSVLogSource&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;filename,
                     int&nbsp;caseIdColumn,
                     int&nbsp;activityNameColumn,
-                    com.opencsv.CSVParser&nbsp;parser)</pre>
-<div class="block">Constructs the source by providing a CSV parser.
- 
- <p>
- A parser can be produced, for example with the following code:
- <pre>
- CSVParser parser = new CSVParserBuilder()
-     .withSeparator(',')
-     .withIgnoreQuotations(true)
-     .build();
- </pre></div>
+                    <a href="CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">CSVLogSource.ParserConfiguration</a>&nbsp;parserConfiguration)</pre>
+<div class="block">Constructs the source by providing a CSV parser.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>filename</code> - the absolute path of the CSV file</dd>
@@ -265,7 +308,8 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
  starts from 0)</dd>
 <dd><code>activityNameColumn</code> - the id of the column containing the activity
  name (counting starts from 0)</dd>
-<dd><code>parser</code> - the parser to be used for parsing the CSV file</dd>
+<dd><code>parserConfiguration</code> - the parser configuration to be used for
+ parsing the CSV file</dd>
 </dl>
 </li>
 </ul>
@@ -299,43 +343,17 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a id="getObservable()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getObservable</h4>
-<pre class="methodSignature">public&nbsp;io.reactivex.rxjava3.core.Observable&lt;org.deckfour.xes.model.XTrace&gt;&nbsp;getObservable()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Source.html#getObservable()">Source</a></code></span></div>
-<div class="block">This method returns the observable created by the source. Before calling
- this method, it is important to prepare the source by calling the
- <a href="Source.html#prepare()"><code>Source.prepare()</code></a> method.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="Source.html#getObservable()">getObservable</a></code>&nbsp;in interface&nbsp;<code><a href="Source.html" title="interface in beamline.sources">Source</a>&lt;org.deckfour.xes.model.XTrace&gt;</code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the <code>Observable</code></dd>
-</dl>
-</li>
-</ul>
-<a id="prepare()">
+<a id="run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>prepare</h4>
-<pre class="methodSignature">public&nbsp;void&nbsp;prepare()
-             throws <a href="../exceptions/SourceException.html" title="class in beamline.exceptions">SourceException</a></pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Source.html#prepare()">Source</a></code></span></div>
-<div class="block">This method is supposed to be called before the <a href="Source.html#getObservable()"><code>Source.getObservable()</code></a>
- one: it is in charge of preparing the source to be processed.</div>
+<h4>run</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;run&#8203;(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;&nbsp;ctx)
+         throws <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink">Exception</a></pre>
 <dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="Source.html#prepare()">prepare</a></code>&nbsp;in interface&nbsp;<code><a href="Source.html" title="interface in beamline.sources">Source</a>&lt;org.deckfour.xes.model.XTrace&gt;</code></dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../exceptions/SourceException.html" title="class in beamline.exceptions">SourceException</a></code> - while preparing the source, it is important to be
- aware that some sources may generate specific exceptions (e.g., file not
- found, network problems).</dd>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink">Exception</a></code></dd>
 </dl>
 </li>
 </ul>
@@ -391,7 +409,7 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
diff --git a/beamline/sources/MQTTXesSource.html b/beamline/sources/MQTTXesSource.html
index afd0bf4..3e595ba 100644
--- a/beamline/sources/MQTTXesSource.html
+++ b/beamline/sources/MQTTXesSource.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>MQTTXesSource (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -27,7 +27,7 @@
     catch(err) {
     }
 //-->
-var data = {"i0":10,"i1":10};
+var data = {"i0":10};
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -89,7 +89,7 @@ loadScripts(document, 'script');</script>
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
@@ -124,23 +124,37 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
 <li>
 <ul class="inheritance">
+<li>org.apache.flink.api.common.functions.AbstractRichFunction</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.flink.streaming.api.functions.source.RichSourceFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li><a href="BeamlineAbstractSource.html" title="class in beamline.sources">beamline.sources.BeamlineAbstractSource</a></li>
+<li>
+<ul class="inheritance">
 <li>beamline.sources.MQTTXesSource</li>
 </ul>
 </li>
 </ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
 <div class="description">
 <ul class="blockList">
 <li class="blockList">
 <dl>
 <dt>All Implemented Interfaces:</dt>
-<dd><code><a href="Source.html" title="interface in beamline.sources">Source</a>&lt;org.deckfour.xes.model.XTrace&gt;</code>, <code><a href="XesSource.html" title="interface in beamline.sources">XesSource</a></code></dd>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code>, <code>org.apache.flink.api.common.functions.Function</code>, <code>org.apache.flink.api.common.functions.RichFunction</code>, <code>org.apache.flink.streaming.api.functions.source.SourceFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</code></dd>
 </dl>
 <hr>
 <pre>public class <span class="typeNameLabel">MQTTXesSource</span>
-extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
-implements <a href="XesSource.html" title="interface in beamline.sources">XesSource</a></pre>
-<div class="block">This implementation of a <a href="XesSource.html" title="interface in beamline.sources"><code>XesSource</code></a> produces events as they are
- observed in an MQTT-XES broker. This source produces a hot observable.
+extends <a href="BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a></pre>
+<div class="block">This implementation of a <a href="BeamlineAbstractSource.html" title="class in beamline.sources"><code>BeamlineAbstractSource</code></a> produces events as
+ they are observed in an MQTT-XES broker.
  
  <p>
  Example of usage:
@@ -154,6 +168,8 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
 <dl>
 <dt><span class="simpleTagLabel">Author:</span></dt>
 <dd>Andrea Burattin</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../serialized-form.html#beamline.sources.MQTTXesSource">Serialized Form</a></dd>
 </dl>
 </li>
 </ul>
@@ -161,6 +177,23 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a id="nested.classes.inherited.from.class.org.apache.flink.streaming.api.functions.source.SourceFunction">
+<!--   -->
+</a>
+<h3>Nested classes/interfaces inherited from interface&nbsp;org.apache.flink.streaming.api.functions.source.SourceFunction</h3>
+<code>org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext&lt;T extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&gt;</code></li>
+</ul>
+</li>
+</ul>
+</section>
 <!-- ======== CONSTRUCTOR SUMMARY ======== -->
 <section role="region">
 <ul class="blockList">
@@ -201,22 +234,26 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code>io.reactivex.rxjava3.core.Observable&lt;org.deckfour.xes.model.XTrace&gt;</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getObservable()">getObservable</a></span>()</code></th>
-<td class="colLast">
-<div class="block">This method returns the observable created by the source.</div>
-</td>
-</tr>
-<tr id="i1" class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#prepare()">prepare</a></span>()</code></th>
-<td class="colLast">
-<div class="block">This method is supposed to be called before the <a href="Source.html#getObservable()"><code>Source.getObservable()</code></a>
- one: it is in charge of preparing the source to be processed.</div>
-</td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)">run</a></span>&#8203;(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;&nbsp;ctx)</code></th>
+<td class="colLast">&nbsp;</td>
 </tr>
 </table>
 <ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.beamline.sources.BeamlineAbstractSource">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;beamline.sources.<a href="BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a></h3>
+<code><a href="BeamlineAbstractSource.html#cancel()">cancel</a>, <a href="BeamlineAbstractSource.html#isRunning()">isRunning</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.org.apache.flink.api.common.functions.AbstractRichFunction">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.flink.api.common.functions.AbstractRichFunction</h3>
+<code>close, getIterationRuntimeContext, getRuntimeContext, open, setRuntimeContext</code></li>
+</ul>
+<ul class="blockList">
 <li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
 <!--   -->
 </a>
@@ -267,43 +304,17 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a id="getObservable()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getObservable</h4>
-<pre class="methodSignature">public&nbsp;io.reactivex.rxjava3.core.Observable&lt;org.deckfour.xes.model.XTrace&gt;&nbsp;getObservable()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Source.html#getObservable()">Source</a></code></span></div>
-<div class="block">This method returns the observable created by the source. Before calling
- this method, it is important to prepare the source by calling the
- <a href="Source.html#prepare()"><code>Source.prepare()</code></a> method.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="Source.html#getObservable()">getObservable</a></code>&nbsp;in interface&nbsp;<code><a href="Source.html" title="interface in beamline.sources">Source</a>&lt;org.deckfour.xes.model.XTrace&gt;</code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the <code>Observable</code></dd>
-</dl>
-</li>
-</ul>
-<a id="prepare()">
+<a id="run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>prepare</h4>
-<pre class="methodSignature">public&nbsp;void&nbsp;prepare()
-             throws <a href="../exceptions/SourceException.html" title="class in beamline.exceptions">SourceException</a></pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Source.html#prepare()">Source</a></code></span></div>
-<div class="block">This method is supposed to be called before the <a href="Source.html#getObservable()"><code>Source.getObservable()</code></a>
- one: it is in charge of preparing the source to be processed.</div>
+<h4>run</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;run&#8203;(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;&nbsp;ctx)
+         throws <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink">Exception</a></pre>
 <dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="Source.html#prepare()">prepare</a></code>&nbsp;in interface&nbsp;<code><a href="Source.html" title="interface in beamline.sources">Source</a>&lt;org.deckfour.xes.model.XTrace&gt;</code></dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../exceptions/SourceException.html" title="class in beamline.exceptions">SourceException</a></code> - while preparing the source, it is important to be
- aware that some sources may generate specific exceptions (e.g., file not
- found, network problems).</dd>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink">Exception</a></code></dd>
 </dl>
 </li>
 </ul>
@@ -359,7 +370,7 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
diff --git a/beamline/sources/Source.html b/beamline/sources/Source.html
deleted file mode 100644
index e3378bf..0000000
--- a/beamline/sources/Source.html
+++ /dev/null
@@ -1,306 +0,0 @@
-<!DOCTYPE HTML>
-<!-- NewPage -->
-<html lang="en">
-<head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>Source (framework 0.1.0 API)</title>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
-<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
-<link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
-<script type="text/javascript" src="../../script.js"></script>
-<script type="text/javascript" src="../../jquery/jszip/dist/jszip.min.js"></script>
-<script type="text/javascript" src="../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
-<!--[if IE]>
-<script type="text/javascript" src="../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
-<![endif]-->
-<script type="text/javascript" src="../../jquery/jquery-3.5.1.js"></script>
-<script type="text/javascript" src="../../jquery/jquery-ui.js"></script>
-</head>
-<body>
-<script type="text/javascript"><!--
-    try {
-        if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Source (framework 0.1.0 API)";
-        }
-    }
-    catch(err) {
-    }
-//-->
-var data = {"i0":6,"i1":6};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
-var altColor = "altColor";
-var rowColor = "rowColor";
-var tableTab = "tableTab";
-var activeTableTab = "activeTableTab";
-var pathtoroot = "../../";
-var useModuleDirectories = true;
-loadScripts(document, 'script');</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-<header role="banner">
-<nav role="navigation">
-<div class="fixedNav">
-<!-- ========= START OF TOP NAVBAR ======= -->
-<div class="topNav"><a id="navbar.top">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
-<a id="navbar.top.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../index.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/Source.html">Use</a></li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../index-all.html">Index</a></li>
-<li><a href="../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_top">
-<li><a href="../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<ul class="navListSearch">
-<li><label for="search">SEARCH:</label>
-<input type="text" id="search" value="search" disabled="disabled">
-<input type="reset" id="reset" value="reset" disabled="disabled">
-</li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_top");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
-</ul>
-</div>
-<a id="skip.navbar.top">
-<!--   -->
-</a></div>
-<!-- ========= END OF TOP NAVBAR ========= -->
-</div>
-<div class="navPadding">&nbsp;</div>
-<script type="text/javascript"><!--
-$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-//-->
-</script>
-</nav>
-</header>
-<!-- ======== START OF CLASS DATA ======== -->
-<main role="main">
-<div class="header">
-<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.sources</a></div>
-<h2 title="Interface Source" class="title">Interface Source&lt;T&gt;</h2>
-</div>
-<div class="contentContainer">
-<div class="description">
-<ul class="blockList">
-<li class="blockList">
-<dl>
-<dt><span class="paramLabel">Type Parameters:</span></dt>
-<dd><code>T</code> - the type of observable objects this interface will produce.</dd>
-</dl>
-<dl>
-<dt>All Known Subinterfaces:</dt>
-<dd><code><a href="XesSource.html" title="interface in beamline.sources">XesSource</a></code></dd>
-</dl>
-<dl>
-<dt>All Known Implementing Classes:</dt>
-<dd><code><a href="CSVLogSource.html" title="class in beamline.sources">CSVLogSource</a></code>, <code><a href="MQTTXesSource.html" title="class in beamline.sources">MQTTXesSource</a></code>, <code><a href="XesLogSource.html" title="class in beamline.sources">XesLogSource</a></code></dd>
-</dl>
-<hr>
-<pre>public interface <span class="typeNameLabel">Source&lt;T&gt;</span></pre>
-<div class="block">This interface is the base type that should be extended by all sources to be
- used in the framework. When using a source implementing this type, the method
- <a href="#prepare()"><code>prepare()</code></a> should be called <strong>before</strong>
- <a href="#getObservable()"><code>getObservable()</code></a>.</div>
-<dl>
-<dt><span class="simpleTagLabel">Author:</span></dt>
-<dd>Andrea Burattin</dd>
-</dl>
-</li>
-</ul>
-</div>
-<div class="summary">
-<ul class="blockList">
-<li class="blockList">
-<!-- ========== METHOD SUMMARY =========== -->
-<section role="region">
-<ul class="blockList">
-<li class="blockList"><a id="method.summary">
-<!--   -->
-</a>
-<h3>Method Summary</h3>
-<table class="memberSummary">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colSecond" scope="col">Method</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tr id="i0" class="altColor">
-<td class="colFirst"><code>io.reactivex.rxjava3.core.Observable&lt;<a href="Source.html" title="type parameter in Source">T</a>&gt;</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getObservable()">getObservable</a></span>()</code></th>
-<td class="colLast">
-<div class="block">This method returns the observable created by the source.</div>
-</td>
-</tr>
-<tr id="i1" class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#prepare()">prepare</a></span>()</code></th>
-<td class="colLast">
-<div class="block">This method is supposed to be called before the <a href="#getObservable()"><code>getObservable()</code></a>
- one: it is in charge of preparing the source to be processed.</div>
-</td>
-</tr>
-</table>
-</li>
-</ul>
-</section>
-</li>
-</ul>
-</div>
-<div class="details">
-<ul class="blockList">
-<li class="blockList">
-<!-- ============ METHOD DETAIL ========== -->
-<section role="region">
-<ul class="blockList">
-<li class="blockList"><a id="method.detail">
-<!--   -->
-</a>
-<h3>Method Detail</h3>
-<a id="getObservable()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getObservable</h4>
-<pre class="methodSignature">io.reactivex.rxjava3.core.Observable&lt;<a href="Source.html" title="type parameter in Source">T</a>&gt;&nbsp;getObservable()</pre>
-<div class="block">This method returns the observable created by the source. Before calling
- this method, it is important to prepare the source by calling the
- <a href="#prepare()"><code>prepare()</code></a> method.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the <code>Observable</code></dd>
-</dl>
-</li>
-</ul>
-<a id="prepare()">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>prepare</h4>
-<pre class="methodSignature">void&nbsp;prepare()
-      throws <a href="../exceptions/SourceException.html" title="class in beamline.exceptions">SourceException</a></pre>
-<div class="block">This method is supposed to be called before the <a href="#getObservable()"><code>getObservable()</code></a>
- one: it is in charge of preparing the source to be processed.</div>
-<dl>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../exceptions/SourceException.html" title="class in beamline.exceptions">SourceException</a></code> - while preparing the source, it is important to be
- aware that some sources may generate specific exceptions (e.g., file not
- found, network problems).</dd>
-</dl>
-</li>
-</ul>
-</li>
-</ul>
-</section>
-</li>
-</ul>
-</div>
-</div>
-</main>
-<!-- ========= END OF CLASS DATA ========= -->
-<footer role="contentinfo">
-<nav role="navigation">
-<!-- ======= START OF BOTTOM NAVBAR ====== -->
-<div class="bottomNav"><a id="navbar.bottom">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
-<a id="navbar.bottom.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../index.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/Source.html">Use</a></li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../index-all.html">Index</a></li>
-<li><a href="../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_bottom">
-<li><a href="../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_bottom");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
-</ul>
-</div>
-<a id="skip.navbar.bottom">
-<!--   -->
-</a></div>
-<!-- ======== END OF BOTTOM NAVBAR ======= -->
-</nav>
-<p class="legalCopy"><small>Copyright &#169; 2022. All rights reserved.</small></p>
-</footer>
-</body>
-</html>
diff --git a/beamline/sources/StringTestSource.html b/beamline/sources/StringTestSource.html
new file mode 100644
index 0000000..5cf755f
--- /dev/null
+++ b/beamline/sources/StringTestSource.html
@@ -0,0 +1,366 @@
+<!DOCTYPE HTML>
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>StringTestSource (framework 0.1.0 API)</title>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta name="dc.created" content="2022-03-25">
+<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
+<link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
+<script type="text/javascript" src="../../script.js"></script>
+<script type="text/javascript" src="../../jquery/jszip/dist/jszip.min.js"></script>
+<script type="text/javascript" src="../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
+<!--[if IE]>
+<script type="text/javascript" src="../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
+<![endif]-->
+<script type="text/javascript" src="../../jquery/jquery-3.5.1.js"></script>
+<script type="text/javascript" src="../../jquery/jquery-ui.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="StringTestSource (framework 0.1.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var data = {"i0":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+var pathtoroot = "../../";
+var useModuleDirectories = true;
+loadScripts(document, 'script');</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<header role="banner">
+<nav role="navigation">
+<div class="fixedNav">
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a id="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a id="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../index.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/StringTestSource.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../index-all.html">Index</a></li>
+<li><a href="../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../allclasses.html">All&nbsp;Classes</a></li>
+</ul>
+<ul class="navListSearch">
+<li><label for="search">SEARCH:</label>
+<input type="text" id="search" value="search" disabled="disabled">
+<input type="reset" id="reset" value="reset" disabled="disabled">
+</li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a id="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+</div>
+<div class="navPadding">&nbsp;</div>
+<script type="text/javascript"><!--
+$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
+//-->
+</script>
+</nav>
+</header>
+<!-- ======== START OF CLASS DATA ======== -->
+<main role="main">
+<div class="header">
+<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.sources</a></div>
+<h2 title="Class StringTestSource" class="title">Class StringTestSource</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.flink.api.common.functions.AbstractRichFunction</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.flink.streaming.api.functions.source.RichSourceFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li><a href="BeamlineAbstractSource.html" title="class in beamline.sources">beamline.sources.BeamlineAbstractSource</a></li>
+<li>
+<ul class="inheritance">
+<li>beamline.sources.StringTestSource</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code>, <code>org.apache.flink.api.common.functions.Function</code>, <code>org.apache.flink.api.common.functions.RichFunction</code>, <code>org.apache.flink.streaming.api.functions.source.SourceFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</code></dd>
+</dl>
+<hr>
+<pre>public class <span class="typeNameLabel">StringTestSource</span>
+extends <a href="BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a></pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../serialized-form.html#beamline.sources.StringTestSource">Serialized Form</a></dd>
+</dl>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a id="nested.classes.inherited.from.class.org.apache.flink.streaming.api.functions.source.SourceFunction">
+<!--   -->
+</a>
+<h3>Nested classes/interfaces inherited from interface&nbsp;org.apache.flink.streaming.api.functions.source.SourceFunction</h3>
+<code>org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext&lt;T extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&gt;</code></li>
+</ul>
+</li>
+</ul>
+</section>
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Constructor</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr class="altColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.lang.String...)">StringTestSource</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>...&nbsp;traces)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+</section>
+<!-- ========== METHOD SUMMARY =========== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Method</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)">run</a></span>&#8203;(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;&nbsp;ctx)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.beamline.sources.BeamlineAbstractSource">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;beamline.sources.<a href="BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a></h3>
+<code><a href="BeamlineAbstractSource.html#cancel()">cancel</a>, <a href="BeamlineAbstractSource.html#isRunning()">isRunning</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.org.apache.flink.api.common.functions.AbstractRichFunction">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.flink.api.common.functions.AbstractRichFunction</h3>
+<code>close, getIterationRuntimeContext, getRuntimeContext, open, setRuntimeContext</code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
+<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">toString</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</section>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a id="&lt;init&gt;(java.lang.String...)">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>StringTestSource</h4>
+<pre>public&nbsp;StringTestSource&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>...&nbsp;traces)</pre>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+<!-- ============ METHOD DETAIL ========== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a id="run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>run</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;run&#8203;(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;&nbsp;ctx)
+         throws <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink">Exception</a></pre>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink">Exception</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+</li>
+</ul>
+</div>
+</div>
+</main>
+<!-- ========= END OF CLASS DATA ========= -->
+<footer role="contentinfo">
+<nav role="navigation">
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a id="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a id="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../index.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/StringTestSource.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../index-all.html">Index</a></li>
+<li><a href="../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../allclasses.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a id="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+</nav>
+<p class="legalCopy"><small>Copyright &#169; 2022. All rights reserved.</small></p>
+</footer>
+</body>
+</html>
diff --git a/beamline/sources/XesLogSource.html b/beamline/sources/XesLogSource.html
index 447b9ab..715d2c9 100644
--- a/beamline/sources/XesLogSource.html
+++ b/beamline/sources/XesLogSource.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>XesLogSource (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -27,7 +27,7 @@
     catch(err) {
     }
 //-->
-var data = {"i0":10,"i1":10};
+var data = {"i0":10};
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -89,7 +89,7 @@ loadScripts(document, 'script');</script>
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
@@ -124,27 +124,43 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
 <li>
 <ul class="inheritance">
+<li>org.apache.flink.api.common.functions.AbstractRichFunction</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.flink.streaming.api.functions.source.RichSourceFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li><a href="BeamlineAbstractSource.html" title="class in beamline.sources">beamline.sources.BeamlineAbstractSource</a></li>
+<li>
+<ul class="inheritance">
 <li>beamline.sources.XesLogSource</li>
 </ul>
 </li>
 </ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
 <div class="description">
 <ul class="blockList">
 <li class="blockList">
 <dl>
 <dt>All Implemented Interfaces:</dt>
-<dd><code><a href="Source.html" title="interface in beamline.sources">Source</a>&lt;org.deckfour.xes.model.XTrace&gt;</code>, <code><a href="XesSource.html" title="interface in beamline.sources">XesSource</a></code></dd>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code>, <code>org.apache.flink.api.common.functions.Function</code>, <code>org.apache.flink.api.common.functions.RichFunction</code>, <code>org.apache.flink.streaming.api.functions.source.SourceFunction&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;</code></dd>
 </dl>
 <hr>
 <pre>public class <span class="typeNameLabel">XesLogSource</span>
-extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
-implements <a href="XesSource.html" title="interface in beamline.sources">XesSource</a></pre>
-<div class="block">This implementation of a <a href="XesSource.html" title="interface in beamline.sources"><code>XesSource</code></a> produces events according to the
- events contained in an <code>XLog</code>. The events are first sorted according to
- their timestamp and then sent. This source produces a cold observable.</div>
+extends <a href="BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a></pre>
+<div class="block">This implementation of a <a href="BeamlineAbstractSource.html" title="class in beamline.sources"><code>BeamlineAbstractSource</code></a> produces events
+ according to the events contained in an <code>XLog</code>. The events are first
+ sorted according to their timestamp and then sent.</div>
 <dl>
 <dt><span class="simpleTagLabel">Author:</span></dt>
 <dd>Andrea Burattin</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../serialized-form.html#beamline.sources.XesLogSource">Serialized Form</a></dd>
 </dl>
 </li>
 </ul>
@@ -152,6 +168,23 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a id="nested.classes.inherited.from.class.org.apache.flink.streaming.api.functions.source.SourceFunction">
+<!--   -->
+</a>
+<h3>Nested classes/interfaces inherited from interface&nbsp;org.apache.flink.streaming.api.functions.source.SourceFunction</h3>
+<code>org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext&lt;T extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&gt;</code></li>
+</ul>
+</li>
+</ul>
+</section>
 <!-- ======== CONSTRUCTOR SUMMARY ======== -->
 <section role="region">
 <ul class="blockList">
@@ -196,22 +229,26 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code>io.reactivex.rxjava3.core.Observable&lt;org.deckfour.xes.model.XTrace&gt;</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getObservable()">getObservable</a></span>()</code></th>
-<td class="colLast">
-<div class="block">This method returns the observable created by the source.</div>
-</td>
-</tr>
-<tr id="i1" class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#prepare()">prepare</a></span>()</code></th>
-<td class="colLast">
-<div class="block">This method is supposed to be called before the <a href="Source.html#getObservable()"><code>Source.getObservable()</code></a>
- one: it is in charge of preparing the source to be processed.</div>
-</td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)">run</a></span>&#8203;(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;&nbsp;ctx)</code></th>
+<td class="colLast">&nbsp;</td>
 </tr>
 </table>
 <ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.beamline.sources.BeamlineAbstractSource">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;beamline.sources.<a href="BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a></h3>
+<code><a href="BeamlineAbstractSource.html#cancel()">cancel</a>, <a href="BeamlineAbstractSource.html#isRunning()">isRunning</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.org.apache.flink.api.common.functions.AbstractRichFunction">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.flink.api.common.functions.AbstractRichFunction</h3>
+<code>close, getIterationRuntimeContext, getRuntimeContext, open, setRuntimeContext</code></li>
+</ul>
+<ul class="blockList">
 <li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
 <!--   -->
 </a>
@@ -246,8 +283,8 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>fileName</code> - the file containing the log to use. The file can be
  either a file parsed by <code>XesXmlGZIPParser</code> or <code>XesXmlParser</code>
- (i.e., extensions <code>.xes.gz</code> or <code>.xes</code>). If the file
- is none of these, then <a href="#prepare()"><code>prepare()</code></a> will throw an exception.</dd>
+ (i.e., extensions <code>.xes.gz</code> or <code>.xes</code>) or any other
+ parser currently supported by the OpenXES library.</dd>
 </dl>
 </li>
 </ul>
@@ -257,11 +294,15 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
 <ul class="blockListLast">
 <li class="blockList">
 <h4>XesLogSource</h4>
-<pre>public&nbsp;XesLogSource&#8203;(org.deckfour.xes.model.XLog&nbsp;log)</pre>
+<pre>public&nbsp;XesLogSource&#8203;(org.deckfour.xes.model.XLog&nbsp;log)
+             throws <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/IOException.html?is-external=true" title="class or interface in java.io" class="externalLink">IOException</a></pre>
 <div class="block">Constructs a source from the given log</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>log</code> - the log to use as source</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/IOException.html?is-external=true" title="class or interface in java.io" class="externalLink">IOException</a></code> - an exception that might occur when a temporary file
+ is created</dd>
 </dl>
 </li>
 </ul>
@@ -275,43 +316,17 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a id="getObservable()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getObservable</h4>
-<pre class="methodSignature">public&nbsp;io.reactivex.rxjava3.core.Observable&lt;org.deckfour.xes.model.XTrace&gt;&nbsp;getObservable()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Source.html#getObservable()">Source</a></code></span></div>
-<div class="block">This method returns the observable created by the source. Before calling
- this method, it is important to prepare the source by calling the
- <a href="Source.html#prepare()"><code>Source.prepare()</code></a> method.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="Source.html#getObservable()">getObservable</a></code>&nbsp;in interface&nbsp;<code><a href="Source.html" title="interface in beamline.sources">Source</a>&lt;org.deckfour.xes.model.XTrace&gt;</code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the <code>Observable</code></dd>
-</dl>
-</li>
-</ul>
-<a id="prepare()">
+<a id="run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>prepare</h4>
-<pre class="methodSignature">public&nbsp;void&nbsp;prepare()
-             throws <a href="../exceptions/SourceException.html" title="class in beamline.exceptions">SourceException</a></pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Source.html#prepare()">Source</a></code></span></div>
-<div class="block">This method is supposed to be called before the <a href="Source.html#getObservable()"><code>Source.getObservable()</code></a>
- one: it is in charge of preparing the source to be processed.</div>
+<h4>run</h4>
+<pre class="methodSignature">public&nbsp;void&nbsp;run&#8203;(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext&lt;<a href="../events/BEvent.html" title="class in beamline.events">BEvent</a>&gt;&nbsp;ctx)
+         throws <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink">Exception</a></pre>
 <dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="Source.html#prepare()">prepare</a></code>&nbsp;in interface&nbsp;<code><a href="Source.html" title="interface in beamline.sources">Source</a>&lt;org.deckfour.xes.model.XTrace&gt;</code></dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../exceptions/SourceException.html" title="class in beamline.exceptions">SourceException</a></code> - while preparing the source, it is important to be
- aware that some sources may generate specific exceptions (e.g., file not
- found, network problems).</dd>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink">Exception</a></code></dd>
 </dl>
 </li>
 </ul>
@@ -367,7 +382,7 @@ implements <a href="XesSource.html" title="interface in beamline.sources">XesSou
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
diff --git a/beamline/sources/XesSource.html b/beamline/sources/XesSource.html
deleted file mode 100644
index 340f43c..0000000
--- a/beamline/sources/XesSource.html
+++ /dev/null
@@ -1,229 +0,0 @@
-<!DOCTYPE HTML>
-<!-- NewPage -->
-<html lang="en">
-<head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>XesSource (framework 0.1.0 API)</title>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
-<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
-<link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
-<script type="text/javascript" src="../../script.js"></script>
-<script type="text/javascript" src="../../jquery/jszip/dist/jszip.min.js"></script>
-<script type="text/javascript" src="../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
-<!--[if IE]>
-<script type="text/javascript" src="../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
-<![endif]-->
-<script type="text/javascript" src="../../jquery/jquery-3.5.1.js"></script>
-<script type="text/javascript" src="../../jquery/jquery-ui.js"></script>
-</head>
-<body>
-<script type="text/javascript"><!--
-    try {
-        if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="XesSource (framework 0.1.0 API)";
-        }
-    }
-    catch(err) {
-    }
-//-->
-var pathtoroot = "../../";
-var useModuleDirectories = true;
-loadScripts(document, 'script');</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-<header role="banner">
-<nav role="navigation">
-<div class="fixedNav">
-<!-- ========= START OF TOP NAVBAR ======= -->
-<div class="topNav"><a id="navbar.top">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
-<a id="navbar.top.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../index.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/XesSource.html">Use</a></li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../index-all.html">Index</a></li>
-<li><a href="../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_top">
-<li><a href="../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<ul class="navListSearch">
-<li><label for="search">SEARCH:</label>
-<input type="text" id="search" value="search" disabled="disabled">
-<input type="reset" id="reset" value="reset" disabled="disabled">
-</li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_top");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li>Method</li>
-</ul>
-</div>
-<a id="skip.navbar.top">
-<!--   -->
-</a></div>
-<!-- ========= END OF TOP NAVBAR ========= -->
-</div>
-<div class="navPadding">&nbsp;</div>
-<script type="text/javascript"><!--
-$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-//-->
-</script>
-</nav>
-</header>
-<!-- ======== START OF CLASS DATA ======== -->
-<main role="main">
-<div class="header">
-<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.sources</a></div>
-<h2 title="Interface XesSource" class="title">Interface XesSource</h2>
-</div>
-<div class="contentContainer">
-<div class="description">
-<ul class="blockList">
-<li class="blockList">
-<dl>
-<dt>All Superinterfaces:</dt>
-<dd><code><a href="Source.html" title="interface in beamline.sources">Source</a>&lt;org.deckfour.xes.model.XTrace&gt;</code></dd>
-</dl>
-<dl>
-<dt>All Known Implementing Classes:</dt>
-<dd><code><a href="CSVLogSource.html" title="class in beamline.sources">CSVLogSource</a></code>, <code><a href="MQTTXesSource.html" title="class in beamline.sources">MQTTXesSource</a></code>, <code><a href="XesLogSource.html" title="class in beamline.sources">XesLogSource</a></code></dd>
-</dl>
-<hr>
-<pre>public interface <span class="typeNameLabel">XesSource</span>
-extends <a href="Source.html" title="interface in beamline.sources">Source</a>&lt;org.deckfour.xes.model.XTrace&gt;</pre>
-<div class="block">This interface is supposed just to bind the type of <a href="Source.html" title="interface in beamline.sources"><code>Source</code></a> to
- <code>XTrace</code>.</div>
-<dl>
-<dt><span class="simpleTagLabel">Author:</span></dt>
-<dd>Andrea Burattin</dd>
-</dl>
-</li>
-</ul>
-</div>
-<div class="summary">
-<ul class="blockList">
-<li class="blockList">
-<!-- ========== METHOD SUMMARY =========== -->
-<section role="region">
-<ul class="blockList">
-<li class="blockList"><a id="method.summary">
-<!--   -->
-</a>
-<h3>Method Summary</h3>
-<ul class="blockList">
-<li class="blockList"><a id="methods.inherited.from.class.beamline.sources.Source">
-<!--   -->
-</a>
-<h3>Methods inherited from interface&nbsp;beamline.sources.<a href="Source.html" title="interface in beamline.sources">Source</a></h3>
-<code><a href="Source.html#getObservable()">getObservable</a>, <a href="Source.html#prepare()">prepare</a></code></li>
-</ul>
-</li>
-</ul>
-</section>
-</li>
-</ul>
-</div>
-</div>
-</main>
-<!-- ========= END OF CLASS DATA ========= -->
-<footer role="contentinfo">
-<nav role="navigation">
-<!-- ======= START OF BOTTOM NAVBAR ====== -->
-<div class="bottomNav"><a id="navbar.bottom">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
-<a id="navbar.bottom.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../index.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/XesSource.html">Use</a></li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../index-all.html">Index</a></li>
-<li><a href="../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_bottom">
-<li><a href="../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_bottom");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li>Method</li>
-</ul>
-</div>
-<a id="skip.navbar.bottom">
-<!--   -->
-</a></div>
-<!-- ======== END OF BOTTOM NAVBAR ======= -->
-</nav>
-<p class="legalCopy"><small>Copyright &#169; 2022. All rights reserved.</small></p>
-</footer>
-</body>
-</html>
diff --git a/beamline/sources/class-use/XesSource.html b/beamline/sources/class-use/BeamlineAbstractSource.html
similarity index 72%
rename from beamline/sources/class-use/XesSource.html
rename to beamline/sources/class-use/BeamlineAbstractSource.html
index b8a643f..244572b 100644
--- a/beamline/sources/class-use/XesSource.html
+++ b/beamline/sources/class-use/BeamlineAbstractSource.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>Uses of Interface beamline.sources.XesSource (framework 0.1.0 API)</title>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>Uses of Class beamline.sources.BeamlineAbstractSource (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
@@ -21,7 +21,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Interface beamline.sources.XesSource (framework 0.1.0 API)";
+            parent.document.title="Uses of Class beamline.sources.BeamlineAbstractSource (framework 0.1.0 API)";
         }
     }
     catch(err) {
@@ -47,7 +47,7 @@ loadScripts(document, 'script');</script>
 <ul class="navList" title="Navigation">
 <li><a href="../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../XesSource.html" title="interface in beamline.sources">Class</a></li>
+<li><a href="../BeamlineAbstractSource.html" title="class in beamline.sources">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../deprecated-list.html">Deprecated</a></li>
@@ -94,13 +94,13 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </header>
 <main role="main">
 <div class="header">
-<h2 title="Uses of Interface beamline.sources.XesSource" class="title">Uses of Interface<br>beamline.sources.XesSource</h2>
+<h2 title="Uses of Class beamline.sources.BeamlineAbstractSource" class="title">Uses of Class<br>beamline.sources.BeamlineAbstractSource</h2>
 </div>
 <div class="classUseContainer">
 <ul class="blockList">
 <li class="blockList">
 <table class="useSummary">
-<caption><span>Packages that use <a href="../XesSource.html" title="interface in beamline.sources">XesSource</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Packages that use <a href="../BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Package</th>
 <th class="colLast" scope="col">Description</th>
@@ -110,8 +110,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <th class="colFirst" scope="row"><a href="#beamline.sources">beamline.sources</a></th>
 <td class="colLast">
 <div class="block">This package contains all classes necessary to construct
- <code>Observable</code>s that can be used in the rest of
- the project.</div>
+ <code>RichSourceFunction</code>s
+ that can be used in the rest of the project.</div>
 </td>
 </tr>
 </tbody>
@@ -123,9 +123,9 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <section role="region"><a id="beamline.sources">
 <!--   -->
 </a>
-<h3>Uses of <a href="../XesSource.html" title="interface in beamline.sources">XesSource</a> in <a href="../package-summary.html">beamline.sources</a></h3>
+<h3>Uses of <a href="../BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a> in <a href="../package-summary.html">beamline.sources</a></h3>
 <table class="useSummary">
-<caption><span>Classes in <a href="../package-summary.html">beamline.sources</a> that implement <a href="../XesSource.html" title="interface in beamline.sources">XesSource</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Subclasses of <a href="../BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a> in <a href="../package-summary.html">beamline.sources</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colSecond" scope="col">Class</th>
@@ -136,24 +136,29 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <td class="colFirst"><code>class&nbsp;</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../CSVLogSource.html" title="class in beamline.sources">CSVLogSource</a></span></code></th>
 <td class="colLast">
-<div class="block">This implementation of a <a href="../XesSource.html" title="interface in beamline.sources"><code>XesSource</code></a> produces events according to the
- events contained in a CSV file.</div>
+<div class="block">This implementation of a <a href="../BeamlineAbstractSource.html" title="class in beamline.sources"><code>BeamlineAbstractSource</code></a> produces events
+ according to the events contained in a CSV file.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>class&nbsp;</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../MQTTXesSource.html" title="class in beamline.sources">MQTTXesSource</a></span></code></th>
 <td class="colLast">
-<div class="block">This implementation of a <a href="../XesSource.html" title="interface in beamline.sources"><code>XesSource</code></a> produces events as they are
- observed in an MQTT-XES broker.</div>
+<div class="block">This implementation of a <a href="../BeamlineAbstractSource.html" title="class in beamline.sources"><code>BeamlineAbstractSource</code></a> produces events as
+ they are observed in an MQTT-XES broker.</div>
 </td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>class&nbsp;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../StringTestSource.html" title="class in beamline.sources">StringTestSource</a></span></code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../XesLogSource.html" title="class in beamline.sources">XesLogSource</a></span></code></th>
 <td class="colLast">
-<div class="block">This implementation of a <a href="../XesSource.html" title="interface in beamline.sources"><code>XesSource</code></a> produces events according to the
- events contained in an <code>XLog</code>.</div>
+<div class="block">This implementation of a <a href="../BeamlineAbstractSource.html" title="class in beamline.sources"><code>BeamlineAbstractSource</code></a> produces events
+ according to the events contained in an <code>XLog</code>.</div>
 </td>
 </tr>
 </tbody>
@@ -178,7 +183,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="navList" title="Navigation">
 <li><a href="../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../XesSource.html" title="interface in beamline.sources">Class</a></li>
+<li><a href="../BeamlineAbstractSource.html" title="class in beamline.sources">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../deprecated-list.html">Deprecated</a></li>
diff --git a/beamline/sources/class-use/Source.html b/beamline/sources/class-use/CSVLogSource.ParserConfiguration.html
similarity index 62%
rename from beamline/sources/class-use/Source.html
rename to beamline/sources/class-use/CSVLogSource.ParserConfiguration.html
index c8570e0..fff5999 100644
--- a/beamline/sources/class-use/Source.html
+++ b/beamline/sources/class-use/CSVLogSource.ParserConfiguration.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>Uses of Interface beamline.sources.Source (framework 0.1.0 API)</title>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>Uses of Class beamline.sources.CSVLogSource.ParserConfiguration (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
@@ -21,7 +21,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Interface beamline.sources.Source (framework 0.1.0 API)";
+            parent.document.title="Uses of Class beamline.sources.CSVLogSource.ParserConfiguration (framework 0.1.0 API)";
         }
     }
     catch(err) {
@@ -47,7 +47,7 @@ loadScripts(document, 'script');</script>
 <ul class="navList" title="Navigation">
 <li><a href="../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../Source.html" title="interface in beamline.sources">Class</a></li>
+<li><a href="../CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../deprecated-list.html">Deprecated</a></li>
@@ -94,13 +94,13 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </header>
 <main role="main">
 <div class="header">
-<h2 title="Uses of Interface beamline.sources.Source" class="title">Uses of Interface<br>beamline.sources.Source</h2>
+<h2 title="Uses of Class beamline.sources.CSVLogSource.ParserConfiguration" class="title">Uses of Class<br>beamline.sources.CSVLogSource.ParserConfiguration</h2>
 </div>
 <div class="classUseContainer">
 <ul class="blockList">
 <li class="blockList">
 <table class="useSummary">
-<caption><span>Packages that use <a href="../Source.html" title="interface in beamline.sources">Source</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Packages that use <a href="../CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">CSVLogSource.ParserConfiguration</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Package</th>
 <th class="colLast" scope="col">Description</th>
@@ -110,8 +110,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <th class="colFirst" scope="row"><a href="#beamline.sources">beamline.sources</a></th>
 <td class="colLast">
 <div class="block">This package contains all classes necessary to construct
- <code>Observable</code>s that can be used in the rest of
- the project.</div>
+ <code>RichSourceFunction</code>s
+ that can be used in the rest of the project.</div>
 </td>
 </tr>
 </tbody>
@@ -123,55 +123,38 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <section role="region"><a id="beamline.sources">
 <!--   -->
 </a>
-<h3>Uses of <a href="../Source.html" title="interface in beamline.sources">Source</a> in <a href="../package-summary.html">beamline.sources</a></h3>
+<h3>Uses of <a href="../CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">CSVLogSource.ParserConfiguration</a> in <a href="../package-summary.html">beamline.sources</a></h3>
 <table class="useSummary">
-<caption><span>Subinterfaces of <a href="../Source.html" title="interface in beamline.sources">Source</a> in <a href="../package-summary.html">beamline.sources</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Methods in <a href="../package-summary.html">beamline.sources</a> that return <a href="../CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">CSVLogSource.ParserConfiguration</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colSecond" scope="col">Interface</th>
+<th class="colSecond" scope="col">Method</th>
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>interface&nbsp;</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../XesSource.html" title="interface in beamline.sources">XesSource</a></span></code></th>
+<td class="colFirst"><code><a href="../CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">CSVLogSource.ParserConfiguration</a></code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">CSVLogSource.ParserConfiguration.</span><code><span class="memberNameLink"><a href="../CSVLogSource.ParserConfiguration.html#withSeparator(char)">withSeparator</a></span>&#8203;(char&nbsp;separator)</code></th>
 <td class="colLast">
-<div class="block">This interface is supposed just to bind the type of <a href="../Source.html" title="interface in beamline.sources"><code>Source</code></a> to
- <code>XTrace</code>.</div>
+<div class="block">Configures the fields separator</div>
 </td>
 </tr>
 </tbody>
 </table>
 <table class="useSummary">
-<caption><span>Classes in <a href="../package-summary.html">beamline.sources</a> that implement <a href="../Source.html" title="interface in beamline.sources">Source</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Constructors in <a href="../package-summary.html">beamline.sources</a> with parameters of type <a href="../CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">CSVLogSource.ParserConfiguration</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colSecond" scope="col">Class</th>
+<th class="colFirst" scope="col">Constructor</th>
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>class&nbsp;</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../CSVLogSource.html" title="class in beamline.sources">CSVLogSource</a></span></code></th>
-<td class="colLast">
-<div class="block">This implementation of a <a href="../XesSource.html" title="interface in beamline.sources"><code>XesSource</code></a> produces events according to the
- events contained in a CSV file.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>class&nbsp;</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../MQTTXesSource.html" title="class in beamline.sources">MQTTXesSource</a></span></code></th>
-<td class="colLast">
-<div class="block">This implementation of a <a href="../XesSource.html" title="interface in beamline.sources"><code>XesSource</code></a> produces events as they are
- observed in an MQTT-XES broker.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>class&nbsp;</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../XesLogSource.html" title="class in beamline.sources">XesLogSource</a></span></code></th>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../CSVLogSource.html#%3Cinit%3E(java.lang.String,int,int,beamline.sources.CSVLogSource.ParserConfiguration)">CSVLogSource</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;filename,
+            int&nbsp;caseIdColumn,
+            int&nbsp;activityNameColumn,
+            <a href="../CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">CSVLogSource.ParserConfiguration</a>&nbsp;parserConfiguration)</code></th>
 <td class="colLast">
-<div class="block">This implementation of a <a href="../XesSource.html" title="interface in beamline.sources"><code>XesSource</code></a> produces events according to the
- events contained in an <code>XLog</code>.</div>
+<div class="block">Constructs the source by providing a CSV parser.</div>
 </td>
 </tr>
 </tbody>
@@ -196,7 +179,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="navList" title="Navigation">
 <li><a href="../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../Source.html" title="interface in beamline.sources">Class</a></li>
+<li><a href="../CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../deprecated-list.html">Deprecated</a></li>
diff --git a/beamline/sources/class-use/CSVLogSource.html b/beamline/sources/class-use/CSVLogSource.html
index 38f1407..54386c7 100644
--- a/beamline/sources/class-use/CSVLogSource.html
+++ b/beamline/sources/class-use/CSVLogSource.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Uses of Class beamline.sources.CSVLogSource (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
diff --git a/beamline/sources/class-use/MQTTXesSource.html b/beamline/sources/class-use/MQTTXesSource.html
index 5067894..4b52c72 100644
--- a/beamline/sources/class-use/MQTTXesSource.html
+++ b/beamline/sources/class-use/MQTTXesSource.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Uses of Class beamline.sources.MQTTXesSource (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
diff --git a/beamline/utils/class-use/EventUtils.html b/beamline/sources/class-use/StringTestSource.html
similarity index 86%
rename from beamline/utils/class-use/EventUtils.html
rename to beamline/sources/class-use/StringTestSource.html
index f719cf3..d75430b 100644
--- a/beamline/utils/class-use/EventUtils.html
+++ b/beamline/sources/class-use/StringTestSource.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>Uses of Class beamline.utils.EventUtils (framework 0.1.0 API)</title>
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
+<title>Uses of Class beamline.sources.StringTestSource (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
@@ -21,7 +21,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class beamline.utils.EventUtils (framework 0.1.0 API)";
+            parent.document.title="Uses of Class beamline.sources.StringTestSource (framework 0.1.0 API)";
         }
     }
     catch(err) {
@@ -47,7 +47,7 @@ loadScripts(document, 'script');</script>
 <ul class="navList" title="Navigation">
 <li><a href="../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../EventUtils.html" title="class in beamline.utils">Class</a></li>
+<li><a href="../StringTestSource.html" title="class in beamline.sources">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../deprecated-list.html">Deprecated</a></li>
@@ -94,9 +94,9 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </header>
 <main role="main">
 <div class="header">
-<h2 title="Uses of Class beamline.utils.EventUtils" class="title">Uses of Class<br>beamline.utils.EventUtils</h2>
+<h2 title="Uses of Class beamline.sources.StringTestSource" class="title">Uses of Class<br>beamline.sources.StringTestSource</h2>
 </div>
-<div class="classUseContainer">No usage of beamline.utils.EventUtils</div>
+<div class="classUseContainer">No usage of beamline.sources.StringTestSource</div>
 </main>
 <footer role="contentinfo">
 <nav role="navigation">
@@ -111,7 +111,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="navList" title="Navigation">
 <li><a href="../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../EventUtils.html" title="class in beamline.utils">Class</a></li>
+<li><a href="../StringTestSource.html" title="class in beamline.sources">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../deprecated-list.html">Deprecated</a></li>
diff --git a/beamline/sources/class-use/XesLogSource.html b/beamline/sources/class-use/XesLogSource.html
index 1a89a47..0a2d8a5 100644
--- a/beamline/sources/class-use/XesLogSource.html
+++ b/beamline/sources/class-use/XesLogSource.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Uses of Class beamline.sources.XesLogSource (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
diff --git a/beamline/sources/package-summary.html b/beamline/sources/package-summary.html
index 6f4af31..7104918 100644
--- a/beamline/sources/package-summary.html
+++ b/beamline/sources/package-summary.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>beamline.sources (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -101,62 +101,55 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <!--   -->
 </a>
 <div class="block">This package contains all classes necessary to construct
- <code>Observable</code>s that can be used in the rest of
- the project.</div>
+ <code>RichSourceFunction</code>s
+ that can be used in the rest of the project.</div>
 </section>
 <ul class="blockList">
 <li class="blockList">
 <table class="typeSummary">
-<caption><span>Interface Summary</span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
-<th class="colFirst" scope="col">Interface</th>
+<th class="colFirst" scope="col">Class</th>
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tbody>
 <tr class="altColor">
-<th class="colFirst" scope="row"><a href="Source.html" title="interface in beamline.sources">Source</a>&lt;T&gt;</th>
+<th class="colFirst" scope="row"><a href="BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a></th>
 <td class="colLast">
-<div class="block">This interface is the base type that should be extended by all sources to be
- used in the framework.</div>
+<div class="block">This interface is supposed to bind the type of <code>RichSourceFunction</code> to
+ <a href="../events/BEvent.html" title="class in beamline.events"><code>BEvent</code></a> and to provide minimal infrastructure to check if the sourece
+ is currently running.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<th class="colFirst" scope="row"><a href="XesSource.html" title="interface in beamline.sources">XesSource</a></th>
+<th class="colFirst" scope="row"><a href="CSVLogSource.html" title="class in beamline.sources">CSVLogSource</a></th>
 <td class="colLast">
-<div class="block">This interface is supposed just to bind the type of <a href="Source.html" title="interface in beamline.sources"><code>Source</code></a> to
- <code>XTrace</code>.</div>
+<div class="block">This implementation of a <a href="BeamlineAbstractSource.html" title="class in beamline.sources"><code>BeamlineAbstractSource</code></a> produces events
+ according to the events contained in a CSV file.</div>
 </td>
 </tr>
-</tbody>
-</table>
-</li>
-<li class="blockList">
-<table class="typeSummary">
-<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Class</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tbody>
 <tr class="altColor">
-<th class="colFirst" scope="row"><a href="CSVLogSource.html" title="class in beamline.sources">CSVLogSource</a></th>
+<th class="colFirst" scope="row"><a href="CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">CSVLogSource.ParserConfiguration</a></th>
 <td class="colLast">
-<div class="block">This implementation of a <a href="XesSource.html" title="interface in beamline.sources"><code>XesSource</code></a> produces events according to the
- events contained in a CSV file.</div>
+<div class="block">This class is used to configure the parser of the CSV</div>
 </td>
 </tr>
 <tr class="rowColor">
 <th class="colFirst" scope="row"><a href="MQTTXesSource.html" title="class in beamline.sources">MQTTXesSource</a></th>
 <td class="colLast">
-<div class="block">This implementation of a <a href="XesSource.html" title="interface in beamline.sources"><code>XesSource</code></a> produces events as they are
- observed in an MQTT-XES broker.</div>
+<div class="block">This implementation of a <a href="BeamlineAbstractSource.html" title="class in beamline.sources"><code>BeamlineAbstractSource</code></a> produces events as
+ they are observed in an MQTT-XES broker.</div>
 </td>
 </tr>
 <tr class="altColor">
+<th class="colFirst" scope="row"><a href="StringTestSource.html" title="class in beamline.sources">StringTestSource</a></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <th class="colFirst" scope="row"><a href="XesLogSource.html" title="class in beamline.sources">XesLogSource</a></th>
 <td class="colLast">
-<div class="block">This implementation of a <a href="XesSource.html" title="interface in beamline.sources"><code>XesSource</code></a> produces events according to the
- events contained in an <code>XLog</code>.</div>
+<div class="block">This implementation of a <a href="BeamlineAbstractSource.html" title="class in beamline.sources"><code>BeamlineAbstractSource</code></a> produces events
+ according to the events contained in an <code>XLog</code>.</div>
 </td>
 </tr>
 </tbody>
diff --git a/beamline/sources/package-tree.html b/beamline/sources/package-tree.html
index ed70b23..86ded75 100644
--- a/beamline/sources/package-tree.html
+++ b/beamline/sources/package-tree.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>beamline.sources Class Hierarchy (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -106,19 +106,23 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul>
 <li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink"><span class="typeNameLink">Object</span></a>
 <ul>
-<li class="circle">beamline.sources.<a href="CSVLogSource.html" title="class in beamline.sources"><span class="typeNameLink">CSVLogSource</span></a> (implements beamline.sources.<a href="XesSource.html" title="interface in beamline.sources">XesSource</a>)</li>
-<li class="circle">beamline.sources.<a href="MQTTXesSource.html" title="class in beamline.sources"><span class="typeNameLink">MQTTXesSource</span></a> (implements beamline.sources.<a href="XesSource.html" title="interface in beamline.sources">XesSource</a>)</li>
-<li class="circle">beamline.sources.<a href="XesLogSource.html" title="class in beamline.sources"><span class="typeNameLink">XesLogSource</span></a> (implements beamline.sources.<a href="XesSource.html" title="interface in beamline.sources">XesSource</a>)</li>
+<li class="circle">org.apache.flink.api.common.functions.AbstractRichFunction (implements org.apache.flink.api.common.functions.RichFunction, java.io.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>)
+<ul>
+<li class="circle">org.apache.flink.streaming.api.functions.source.RichSourceFunction&lt;OUT&gt; (implements org.apache.flink.streaming.api.functions.source.SourceFunction&lt;T&gt;)
+<ul>
+<li class="circle">beamline.sources.<a href="BeamlineAbstractSource.html" title="class in beamline.sources"><span class="typeNameLink">BeamlineAbstractSource</span></a>
+<ul>
+<li class="circle">beamline.sources.<a href="CSVLogSource.html" title="class in beamline.sources"><span class="typeNameLink">CSVLogSource</span></a></li>
+<li class="circle">beamline.sources.<a href="MQTTXesSource.html" title="class in beamline.sources"><span class="typeNameLink">MQTTXesSource</span></a></li>
+<li class="circle">beamline.sources.<a href="StringTestSource.html" title="class in beamline.sources"><span class="typeNameLink">StringTestSource</span></a></li>
+<li class="circle">beamline.sources.<a href="XesLogSource.html" title="class in beamline.sources"><span class="typeNameLink">XesLogSource</span></a></li>
 </ul>
 </li>
 </ul>
-</section>
-<section role="region">
-<h2 title="Interface Hierarchy">Interface Hierarchy</h2>
-<ul>
-<li class="circle">beamline.sources.<a href="Source.html" title="interface in beamline.sources"><span class="typeNameLink">Source</span></a>&lt;T&gt;
-<ul>
-<li class="circle">beamline.sources.<a href="XesSource.html" title="interface in beamline.sources"><span class="typeNameLink">XesSource</span></a></li>
+</li>
+</ul>
+</li>
+<li class="circle">beamline.sources.<a href="CSVLogSource.ParserConfiguration.html" title="class in beamline.sources"><span class="typeNameLink">CSVLogSource.ParserConfiguration</span></a> (implements java.io.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>)</li>
 </ul>
 </li>
 </ul>
diff --git a/beamline/sources/package-use.html b/beamline/sources/package-use.html
index 33e7c54..0a1ce0a 100644
--- a/beamline/sources/package-use.html
+++ b/beamline/sources/package-use.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Uses of Package beamline.sources (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="../../script.js"></script>
@@ -110,8 +110,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <th class="colFirst" scope="row"><a href="#beamline.sources">beamline.sources</a></th>
 <td class="colLast">
 <div class="block">This package contains all classes necessary to construct
- <code>Observable</code>s that can be used in the rest of
- the project.</div>
+ <code>RichSourceFunction</code>s
+ that can be used in the rest of the project.</div>
 </td>
 </tr>
 </tbody>
@@ -128,17 +128,17 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </tr>
 <tbody>
 <tr class="altColor">
-<th class="colFirst" scope="row"><a href="class-use/Source.html#beamline.sources">Source</a></th>
+<th class="colFirst" scope="row"><a href="class-use/BeamlineAbstractSource.html#beamline.sources">BeamlineAbstractSource</a></th>
 <td class="colLast">
-<div class="block">This interface is the base type that should be extended by all sources to be
- used in the framework.</div>
+<div class="block">This interface is supposed to bind the type of <code>RichSourceFunction</code> to
+ <a href="../events/BEvent.html" title="class in beamline.events"><code>BEvent</code></a> and to provide minimal infrastructure to check if the sourece
+ is currently running.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<th class="colFirst" scope="row"><a href="class-use/XesSource.html#beamline.sources">XesSource</a></th>
+<th class="colFirst" scope="row"><a href="class-use/CSVLogSource.ParserConfiguration.html#beamline.sources">CSVLogSource.ParserConfiguration</a></th>
 <td class="colLast">
-<div class="block">This interface is supposed just to bind the type of <a href="Source.html" title="interface in beamline.sources"><code>Source</code></a> to
- <code>XTrace</code>.</div>
+<div class="block">This class is used to configure the parser of the CSV</div>
 </td>
 </tr>
 </tbody>
diff --git a/beamline/utils/EventUtils.html b/beamline/utils/EventUtils.html
deleted file mode 100644
index 914ddb2..0000000
--- a/beamline/utils/EventUtils.html
+++ /dev/null
@@ -1,404 +0,0 @@
-<!DOCTYPE HTML>
-<!-- NewPage -->
-<html lang="en">
-<head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>EventUtils (framework 0.1.0 API)</title>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
-<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
-<link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
-<script type="text/javascript" src="../../script.js"></script>
-<script type="text/javascript" src="../../jquery/jszip/dist/jszip.min.js"></script>
-<script type="text/javascript" src="../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
-<!--[if IE]>
-<script type="text/javascript" src="../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
-<![endif]-->
-<script type="text/javascript" src="../../jquery/jquery-3.5.1.js"></script>
-<script type="text/javascript" src="../../jquery/jquery-ui.js"></script>
-</head>
-<body>
-<script type="text/javascript"><!--
-    try {
-        if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="EventUtils (framework 0.1.0 API)";
-        }
-    }
-    catch(err) {
-    }
-//-->
-var data = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9};
-var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
-var altColor = "altColor";
-var rowColor = "rowColor";
-var tableTab = "tableTab";
-var activeTableTab = "activeTableTab";
-var pathtoroot = "../../";
-var useModuleDirectories = true;
-loadScripts(document, 'script');</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-<header role="banner">
-<nav role="navigation">
-<div class="fixedNav">
-<!-- ========= START OF TOP NAVBAR ======= -->
-<div class="topNav"><a id="navbar.top">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
-<a id="navbar.top.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../index.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/EventUtils.html">Use</a></li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../index-all.html">Index</a></li>
-<li><a href="../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_top">
-<li><a href="../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<ul class="navListSearch">
-<li><label for="search">SEARCH:</label>
-<input type="text" id="search" value="search" disabled="disabled">
-<input type="reset" id="reset" value="reset" disabled="disabled">
-</li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_top");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
-</ul>
-</div>
-<a id="skip.navbar.top">
-<!--   -->
-</a></div>
-<!-- ========= END OF TOP NAVBAR ========= -->
-</div>
-<div class="navPadding">&nbsp;</div>
-<script type="text/javascript"><!--
-$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-//-->
-</script>
-</nav>
-</header>
-<!-- ======== START OF CLASS DATA ======== -->
-<main role="main">
-<div class="header">
-<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">beamline.utils</a></div>
-<h2 title="Class EventUtils" class="title">Class EventUtils</h2>
-</div>
-<div class="contentContainer">
-<ul class="inheritance">
-<li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
-<li>
-<ul class="inheritance">
-<li>beamline.utils.EventUtils</li>
-</ul>
-</li>
-</ul>
-<div class="description">
-<ul class="blockList">
-<li class="blockList">
-<hr>
-<pre>public class <span class="typeNameLabel">EventUtils</span>
-extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></pre>
-<div class="block">This class contains some utility methods useful to handle and process events.</div>
-<dl>
-<dt><span class="simpleTagLabel">Author:</span></dt>
-<dd>Andrea Burattin</dd>
-</dl>
-</li>
-</ul>
-</div>
-<div class="summary">
-<ul class="blockList">
-<li class="blockList">
-<!-- ========== METHOD SUMMARY =========== -->
-<section role="region">
-<ul class="blockList">
-<li class="blockList"><a id="method.summary">
-<!--   -->
-</a>
-<h3>Method Summary</h3>
-<table class="memberSummary">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colSecond" scope="col">Method</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tr id="i0" class="altColor">
-<td class="colFirst"><code>static org.deckfour.xes.model.XTrace</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#create(java.lang.String,java.lang.String)">create</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
-      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId)</code></th>
-<td class="colLast">
-<div class="block">Creates a new <code>XTrace</code> referring to one event.</div>
-</td>
-</tr>
-<tr id="i1" class="rowColor">
-<td class="colFirst"><code>static org.deckfour.xes.model.XTrace</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#create(java.lang.String,java.lang.String,java.util.Date)">create</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
-      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId,
-      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Date.html?is-external=true" title="class or interface in java.util" class="externalLink">Date</a>&nbsp;time)</code></th>
-<td class="colLast">
-<div class="block">Creates a new <code>XTrace</code> referring to one event</div>
-</td>
-</tr>
-<tr id="i2" class="altColor">
-<td class="colFirst"><code>static org.deckfour.xes.model.XTrace</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#create(java.lang.String,java.lang.String,java.util.Date,java.util.Collection)">create</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
-      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId,
-      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Date.html?is-external=true" title="class or interface in java.util" class="externalLink">Date</a>&nbsp;time,
-      <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;org.apache.commons.lang3.tuple.Pair&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&gt;&nbsp;eventAttributes)</code></th>
-<td class="colLast">
-<div class="block">Creates a new <code>XTrace</code> referring to one event</div>
-</td>
-</tr>
-<tr id="i3" class="rowColor">
-<td class="colFirst"><code>static <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getActivityName(org.deckfour.xes.model.XTrace)">getActivityName</a></span>&#8203;(org.deckfour.xes.model.XTrace&nbsp;event)</code></th>
-<td class="colLast">
-<div class="block">Extracts the activity name</div>
-</td>
-</tr>
-<tr id="i4" class="altColor">
-<td class="colFirst"><code>static <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCaseId(org.deckfour.xes.model.XTrace)">getCaseId</a></span>&#8203;(org.deckfour.xes.model.XTrace&nbsp;event)</code></th>
-<td class="colLast">
-<div class="block">Extracts the case id</div>
-</td>
-</tr>
-</table>
-<ul class="blockList">
-<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
-<!--   -->
-</a>
-<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
-<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">toString</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></li>
-</ul>
-</li>
-</ul>
-</section>
-</li>
-</ul>
-</div>
-<div class="details">
-<ul class="blockList">
-<li class="blockList">
-<!-- ============ METHOD DETAIL ========== -->
-<section role="region">
-<ul class="blockList">
-<li class="blockList"><a id="method.detail">
-<!--   -->
-</a>
-<h3>Method Detail</h3>
-<a id="create(java.lang.String,java.lang.String,java.util.Date,java.util.Collection)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>create</h4>
-<pre class="methodSignature">public static&nbsp;org.deckfour.xes.model.XTrace&nbsp;create&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
-                                                   <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId,
-                                                   <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Date.html?is-external=true" title="class or interface in java.util" class="externalLink">Date</a>&nbsp;time,
-                                                   <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;org.apache.commons.lang3.tuple.Pair&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&gt;&nbsp;eventAttributes)
-                                            throws <a href="../exceptions/EventException.html" title="class in beamline.exceptions">EventException</a></pre>
-<div class="block">Creates a new <code>XTrace</code> referring to one event</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>activityName</code> - the name of the activity</dd>
-<dd><code>caseId</code> - the identifier of the process instance</dd>
-<dd><code>time</code> - the time when the event has happened</dd>
-<dd><code>eventAttributes</code> - a collection of string attributes for the event</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the new event</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../exceptions/EventException.html" title="class in beamline.exceptions">EventException</a></code> - this exception is thrown is incomplete information
- is provided</dd>
-</dl>
-</li>
-</ul>
-<a id="create(java.lang.String,java.lang.String,java.util.Date)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>create</h4>
-<pre class="methodSignature">public static&nbsp;org.deckfour.xes.model.XTrace&nbsp;create&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
-                                                   <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId,
-                                                   <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Date.html?is-external=true" title="class or interface in java.util" class="externalLink">Date</a>&nbsp;time)
-                                            throws <a href="../exceptions/EventException.html" title="class in beamline.exceptions">EventException</a></pre>
-<div class="block">Creates a new <code>XTrace</code> referring to one event</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>activityName</code> - the name of the activity</dd>
-<dd><code>caseId</code> - the identifier of the process instance</dd>
-<dd><code>time</code> - the time when the event has happened</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the new event</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../exceptions/EventException.html" title="class in beamline.exceptions">EventException</a></code> - this exception is thrown is incomplete information
- is provided</dd>
-</dl>
-</li>
-</ul>
-<a id="create(java.lang.String,java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>create</h4>
-<pre class="methodSignature">public static&nbsp;org.deckfour.xes.model.XTrace&nbsp;create&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;activityName,
-                                                   <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;caseId)
-                                            throws <a href="../exceptions/EventException.html" title="class in beamline.exceptions">EventException</a></pre>
-<div class="block">Creates a new <code>XTrace</code> referring to one event. The time of the
- event is set to the current time</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>activityName</code> - the name of the activity</dd>
-<dd><code>caseId</code> - the identifier of the process instance</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the new event</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../exceptions/EventException.html" title="class in beamline.exceptions">EventException</a></code> - this exception is thrown is incomplete information
- is provided</dd>
-</dl>
-</li>
-</ul>
-<a id="getActivityName(org.deckfour.xes.model.XTrace)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getActivityName</h4>
-<pre class="methodSignature">public static&nbsp;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;getActivityName&#8203;(org.deckfour.xes.model.XTrace&nbsp;event)</pre>
-<div class="block">Extracts the activity name</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>event</code> - the event</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the activity name</dd>
-</dl>
-</li>
-</ul>
-<a id="getCaseId(org.deckfour.xes.model.XTrace)">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>getCaseId</h4>
-<pre class="methodSignature">public static&nbsp;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;getCaseId&#8203;(org.deckfour.xes.model.XTrace&nbsp;event)</pre>
-<div class="block">Extracts the case id</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>event</code> - the event</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the case id</dd>
-</dl>
-</li>
-</ul>
-</li>
-</ul>
-</section>
-</li>
-</ul>
-</div>
-</div>
-</main>
-<!-- ========= END OF CLASS DATA ========= -->
-<footer role="contentinfo">
-<nav role="navigation">
-<!-- ======= START OF BOTTOM NAVBAR ====== -->
-<div class="bottomNav"><a id="navbar.bottom">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
-<a id="navbar.bottom.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../index.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/EventUtils.html">Use</a></li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../index-all.html">Index</a></li>
-<li><a href="../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_bottom">
-<li><a href="../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_bottom");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
-</ul>
-</div>
-<a id="skip.navbar.bottom">
-<!--   -->
-</a></div>
-<!-- ======== END OF BOTTOM NAVBAR ======= -->
-</nav>
-<p class="legalCopy"><small>Copyright &#169; 2022. All rights reserved.</small></p>
-</footer>
-</body>
-</html>
diff --git a/beamline/utils/package-tree.html b/beamline/utils/package-tree.html
deleted file mode 100644
index 9e24173..0000000
--- a/beamline/utils/package-tree.html
+++ /dev/null
@@ -1,164 +0,0 @@
-<!DOCTYPE HTML>
-<!-- NewPage -->
-<html lang="en">
-<head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
-<title>beamline.utils Class Hierarchy (framework 0.1.0 API)</title>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
-<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
-<link rel="stylesheet" type="text/css" href="../../jquery/jquery-ui.css" title="Style">
-<script type="text/javascript" src="../../script.js"></script>
-<script type="text/javascript" src="../../jquery/jszip/dist/jszip.min.js"></script>
-<script type="text/javascript" src="../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
-<!--[if IE]>
-<script type="text/javascript" src="../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
-<![endif]-->
-<script type="text/javascript" src="../../jquery/jquery-3.5.1.js"></script>
-<script type="text/javascript" src="../../jquery/jquery-ui.js"></script>
-</head>
-<body>
-<script type="text/javascript"><!--
-    try {
-        if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="beamline.utils Class Hierarchy (framework 0.1.0 API)";
-        }
-    }
-    catch(err) {
-    }
-//-->
-var pathtoroot = "../../";
-var useModuleDirectories = true;
-loadScripts(document, 'script');</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-<header role="banner">
-<nav role="navigation">
-<div class="fixedNav">
-<!-- ========= START OF TOP NAVBAR ======= -->
-<div class="topNav"><a id="navbar.top">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
-<a id="navbar.top.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../index.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li>Class</li>
-<li>Use</li>
-<li class="navBarCell1Rev">Tree</li>
-<li><a href="../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../index-all.html">Index</a></li>
-<li><a href="../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_top">
-<li><a href="../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<ul class="navListSearch">
-<li><label for="search">SEARCH:</label>
-<input type="text" id="search" value="search" disabled="disabled">
-<input type="reset" id="reset" value="reset" disabled="disabled">
-</li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_top");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<a id="skip.navbar.top">
-<!--   -->
-</a></div>
-<!-- ========= END OF TOP NAVBAR ========= -->
-</div>
-<div class="navPadding">&nbsp;</div>
-<script type="text/javascript"><!--
-$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-//-->
-</script>
-</nav>
-</header>
-<main role="main">
-<div class="header">
-<h1 class="title">Hierarchy For Package beamline.utils</h1>
-<span class="packageHierarchyLabel">Package Hierarchies:</span>
-<ul class="horizontal">
-<li><a href="../../overview-tree.html">All Packages</a></li>
-</ul>
-</div>
-<div class="contentContainer">
-<section role="region">
-<h2 title="Class Hierarchy">Class Hierarchy</h2>
-<ul>
-<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink"><span class="typeNameLink">Object</span></a>
-<ul>
-<li class="circle">beamline.utils.<a href="EventUtils.html" title="class in beamline.utils"><span class="typeNameLink">EventUtils</span></a></li>
-</ul>
-</li>
-</ul>
-</section>
-</div>
-</main>
-<footer role="contentinfo">
-<nav role="navigation">
-<!-- ======= START OF BOTTOM NAVBAR ====== -->
-<div class="bottomNav"><a id="navbar.bottom">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
-<a id="navbar.bottom.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../index.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li>Class</li>
-<li>Use</li>
-<li class="navBarCell1Rev">Tree</li>
-<li><a href="../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../index-all.html">Index</a></li>
-<li><a href="../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_bottom">
-<li><a href="../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_bottom");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<a id="skip.navbar.bottom">
-<!--   -->
-</a></div>
-<!-- ======== END OF BOTTOM NAVBAR ======= -->
-</nav>
-<p class="legalCopy"><small>Copyright &#169; 2022. All rights reserved.</small></p>
-</footer>
-</body>
-</html>
diff --git a/constant-values.html b/constant-values.html
index 3a5bca0..32ad069 100644
--- a/constant-values.html
+++ b/constant-values.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Constant Field Values (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
diff --git a/deprecated-list.html b/deprecated-list.html
index 12158a5..c8651e8 100644
--- a/deprecated-list.html
+++ b/deprecated-list.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Deprecated List (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
diff --git a/element-list b/element-list
index 200c64e..60c7db7 100644
--- a/element-list
+++ b/element-list
@@ -1,7 +1,6 @@
+beamline.events
 beamline.exceptions
 beamline.filters
-beamline.mappers
 beamline.models.algorithms
 beamline.models.responses
 beamline.sources
-beamline.utils
diff --git a/help-doc.html b/help-doc.html
index c42ada5..1ea786e 100644
--- a/help-doc.html
+++ b/help-doc.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>API Help (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
diff --git a/index-all.html b/index-all.html
index dd6fd03..aea5ff6 100644
--- a/index-all.html
+++ b/index-all.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Index (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
@@ -93,13 +93,11 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </nav>
 </header>
 <main role="main">
-<div class="contentContainer"><a href="#I:A">A</a>&nbsp;<a href="#I:B">B</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:D">D</a>&nbsp;<a href="#I:E">E</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:H">H</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:M">M</a>&nbsp;<a href="#I:P">P</a>&nbsp;<a href="#I:R">R</a>&nbsp;<a href="#I:S">S</a>&nbsp;<a href="#I:T">T</a>&nbsp;<a href="#I:X">X</a>&nbsp;<br><a href="allclasses-index.html">All&nbsp;Classes</a>&nbsp;<a href="allpackages-index.html">All&nbsp;Packages</a><a id="I:A">
+<div class="contentContainer"><a href="#I:A">A</a>&nbsp;<a href="#I:B">B</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:D">D</a>&nbsp;<a href="#I:E">E</a>&nbsp;<a href="#I:F">F</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:H">H</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:M">M</a>&nbsp;<a href="#I:O">O</a>&nbsp;<a href="#I:P">P</a>&nbsp;<a href="#I:R">R</a>&nbsp;<a href="#I:S">S</a>&nbsp;<a href="#I:T">T</a>&nbsp;<a href="#I:W">W</a>&nbsp;<a href="#I:X">X</a>&nbsp;<br><a href="allclasses-index.html">All&nbsp;Classes</a>&nbsp;<a href="allpackages-index.html">All&nbsp;Packages</a><a id="I:A">
 <!--   -->
 </a>
 <h2 class="title">A</h2>
 <dl>
-<dt><span class="memberNameLink"><a href="beamline/models/algorithms/StreamMiningAlgorithm.html#accept(T)">accept(T)</a></span> - Method in class beamline.models.algorithms.<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html#addValue(T)">addValue(T)</a></span> - Method in class beamline.filters.<a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnEventAttributeEqualityFilter</a></dt>
 <dd>
 <div class="block">Adds the value to the list of values to be considered for removal</div>
@@ -108,14 +106,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Adds the value to the list of values to be considered for retention</div>
 </dd>
-<dt><span class="memberNameLink"><a href="beamline/mappers/InfiniteSizeDirectlyFollowsMapper.html#apply(org.deckfour.xes.model.XTrace)">apply(XTrace)</a></span> - Method in class beamline.mappers.<a href="beamline/mappers/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.mappers">InfiniteSizeDirectlyFollowsMapper</a></dt>
-<dd>&nbsp;</dd>
 </dl>
 <a id="I:B">
 <!--   -->
 </a>
 <h2 class="title">B</h2>
 <dl>
+<dt><a href="beamline/events/package-summary.html">beamline.events</a> - package beamline.events</dt>
+<dd>&nbsp;</dd>
 <dt><a href="beamline/exceptions/package-summary.html">beamline.exceptions</a> - package beamline.exceptions</dt>
 <dd>&nbsp;</dd>
 <dt><a href="beamline/filters/package-summary.html">beamline.filters</a> - package beamline.filters</dt>
@@ -123,11 +121,6 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <div class="block">This package contains some filters that are available by default in the
  framework.</div>
 </dd>
-<dt><a href="beamline/mappers/package-summary.html">beamline.mappers</a> - package beamline.mappers</dt>
-<dd>
-<div class="block">This package contains some mappers that are available by default in the
- framework.</div>
-</dd>
 <dt><a href="beamline/models/algorithms/package-summary.html">beamline.models.algorithms</a> - package beamline.models.algorithms</dt>
 <dd>
 <div class="block">This package contains all classes of the framework necessary to have mining
@@ -141,12 +134,22 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dt><a href="beamline/sources/package-summary.html">beamline.sources</a> - package beamline.sources</dt>
 <dd>
 <div class="block">This package contains all classes necessary to construct
- <code>Observable</code>s that can be used in the rest of
- the project.</div>
+ <code>RichSourceFunction</code>s
+ that can be used in the rest of the project.</div>
 </dd>
-<dt><a href="beamline/utils/package-summary.html">beamline.utils</a> - package beamline.utils</dt>
+<dt><a href="beamline/sources/BeamlineAbstractSource.html" title="class in beamline.sources"><span class="typeNameLink">BeamlineAbstractSource</span></a> - Class in <a href="beamline/sources/package-summary.html">beamline.sources</a></dt>
 <dd>
-<div class="block">This package contains utility classes to be used throughout the framework.</div>
+<div class="block">This interface is supposed to bind the type of <code>RichSourceFunction</code> to
+ <a href="beamline/events/BEvent.html" title="class in beamline.events"><code>BEvent</code></a> and to provide minimal infrastructure to check if the sourece
+ is currently running.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="beamline/sources/BeamlineAbstractSource.html#%3Cinit%3E()">BeamlineAbstractSource()</a></span> - Constructor for class beamline.sources.<a href="beamline/sources/BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="beamline/events/BEvent.html" title="class in beamline.events"><span class="typeNameLink">BEvent</span></a> - Class in <a href="beamline/events/package-summary.html">beamline.events</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#%3Cinit%3E()">BEvent()</a></span> - Constructor for class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
+<dd>
+<div class="block">Constructor of a new event</div>
 </dd>
 </dl>
 <a id="I:C">
@@ -154,43 +157,51 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </a>
 <h2 class="title">C</h2>
 <dl>
-<dt><span class="memberNameLink"><a href="beamline/utils/EventUtils.html#create(java.lang.String,java.lang.String)">create(String, String)</a></span> - Static method in class beamline.utils.<a href="beamline/utils/EventUtils.html" title="class in beamline.utils">EventUtils</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/sources/BeamlineAbstractSource.html#cancel()">cancel()</a></span> - Method in class beamline.sources.<a href="beamline/sources/BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#compareTo(beamline.events.BEvent)">compareTo(BEvent)</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#create(java.lang.String,java.lang.String,java.lang.String)">create(String, String, String)</a></span> - Static method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
 <dd>
 <div class="block">Creates a new <code>XTrace</code> referring to one event.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="beamline/utils/EventUtils.html#create(java.lang.String,java.lang.String,java.util.Date)">create(String, String, Date)</a></span> - Static method in class beamline.utils.<a href="beamline/utils/EventUtils.html" title="class in beamline.utils">EventUtils</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#create(java.lang.String,java.lang.String,java.lang.String,java.util.Date)">create(String, String, String, Date)</a></span> - Static method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
 <dd>
-<div class="block">Creates a new <code>XTrace</code> referring to one event</div>
+<div class="block">Creates a new <a href="beamline/events/BEvent.html" title="class in beamline.events"><code>BEvent</code></a> referring to one event</div>
 </dd>
-<dt><span class="memberNameLink"><a href="beamline/utils/EventUtils.html#create(java.lang.String,java.lang.String,java.util.Date,java.util.Collection)">create(String, String, Date, Collection&lt;Pair&lt;String, String&gt;&gt;)</a></span> - Static method in class beamline.utils.<a href="beamline/utils/EventUtils.html" title="class in beamline.utils">EventUtils</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#create(java.lang.String,java.lang.String,java.lang.String,java.util.Date,java.util.Collection)">create(String, String, String, Date, Collection&lt;Pair&lt;String, String&gt;&gt;)</a></span> - Static method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
 <dd>
-<div class="block">Creates a new <code>XTrace</code> referring to one event</div>
+<div class="block">Creates a new <a href="beamline/events/BEvent.html" title="class in beamline.events"><code>BEvent</code></a> referring to one event</div>
 </dd>
 <dt><a href="beamline/sources/CSVLogSource.html" title="class in beamline.sources"><span class="typeNameLink">CSVLogSource</span></a> - Class in <a href="beamline/sources/package-summary.html">beamline.sources</a></dt>
 <dd>
-<div class="block">This implementation of a <a href="beamline/sources/XesSource.html" title="interface in beamline.sources"><code>XesSource</code></a> produces events according to the
- events contained in a CSV file.</div>
+<div class="block">This implementation of a <a href="beamline/sources/BeamlineAbstractSource.html" title="class in beamline.sources"><code>BeamlineAbstractSource</code></a> produces events
+ according to the events contained in a CSV file.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="beamline/sources/CSVLogSource.html#%3Cinit%3E(java.lang.String,int,int)">CSVLogSource(String, int, int)</a></span> - Constructor for class beamline.sources.<a href="beamline/sources/CSVLogSource.html" title="class in beamline.sources">CSVLogSource</a></dt>
 <dd>
 <div class="block">Constructs the source</div>
 </dd>
-<dt><span class="memberNameLink"><a href="beamline/sources/CSVLogSource.html#%3Cinit%3E(java.lang.String,int,int,com.opencsv.CSVParser)">CSVLogSource(String, int, int, CSVParser)</a></span> - Constructor for class beamline.sources.<a href="beamline/sources/CSVLogSource.html" title="class in beamline.sources">CSVLogSource</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/sources/CSVLogSource.html#%3Cinit%3E(java.lang.String,int,int,beamline.sources.CSVLogSource.ParserConfiguration)">CSVLogSource(String, int, int, CSVLogSource.ParserConfiguration)</a></span> - Constructor for class beamline.sources.<a href="beamline/sources/CSVLogSource.html" title="class in beamline.sources">CSVLogSource</a></dt>
 <dd>
 <div class="block">Constructs the source by providing a CSV parser.</div>
 </dd>
+<dt><a href="beamline/sources/CSVLogSource.ParserConfiguration.html" title="class in beamline.sources"><span class="typeNameLink">CSVLogSource.ParserConfiguration</span></a> - Class in <a href="beamline/sources/package-summary.html">beamline.sources</a></dt>
+<dd>
+<div class="block">This class is used to configure the parser of the CSV</div>
+</dd>
 </dl>
 <a id="I:D">
 <!--   -->
 </a>
 <h2 class="title">D</h2>
 <dl>
-<dt><a href="beamline/mappers/DirectlyFollowsRelation.html" title="class in beamline.mappers"><span class="typeNameLink">DirectlyFollowsRelation</span></a> - Class in <a href="beamline/mappers/package-summary.html">beamline.mappers</a></dt>
+<dt><a href="beamline/models/responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses"><span class="typeNameLink">DirectlyFollowsRelation</span></a> - Class in <a href="beamline/models/responses/package-summary.html">beamline.models.responses</a></dt>
 <dd>
 <div class="block">This class represents a directly follows relation as produced by
- <a href="beamline/mappers/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.mappers"><code>InfiniteSizeDirectlyFollowsMapper</code></a>.</div>
+ <a href="beamline/models/algorithms/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms"><code>InfiniteSizeDirectlyFollowsMapper</code></a>.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="beamline/mappers/DirectlyFollowsRelation.html#%3Cinit%3E(java.lang.String,org.deckfour.xes.model.XEvent,org.deckfour.xes.model.XEvent)">DirectlyFollowsRelation(String, XEvent, XEvent)</a></span> - Constructor for class beamline.mappers.<a href="beamline/mappers/DirectlyFollowsRelation.html" title="class in beamline.mappers">DirectlyFollowsRelation</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/models/responses/DirectlyFollowsRelation.html#%3Cinit%3E(beamline.events.BEvent,beamline.events.BEvent)">DirectlyFollowsRelation(BEvent, BEvent)</a></span> - Constructor for class beamline.models.responses.<a href="beamline/models/responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a></dt>
 <dd>
 <div class="block">Constructor</div>
 </dd>
@@ -200,14 +211,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </a>
 <h2 class="title">E</h2>
 <dl>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/models/responses/DirectlyFollowsRelation.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class beamline.models.responses.<a href="beamline/models/responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a></dt>
+<dd>&nbsp;</dd>
 <dt><a href="beamline/exceptions/EventException.html" title="class in beamline.exceptions"><span class="typeNameLink">EventException</span></a> - Exception in <a href="beamline/exceptions/package-summary.html">beamline.exceptions</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="beamline/exceptions/EventException.html#%3Cinit%3E(java.lang.String)">EventException(String)</a></span> - Constructor for exception beamline.exceptions.<a href="beamline/exceptions/EventException.html" title="class in beamline.exceptions">EventException</a></dt>
 <dd>&nbsp;</dd>
-<dt><a href="beamline/utils/EventUtils.html" title="class in beamline.utils"><span class="typeNameLink">EventUtils</span></a> - Class in <a href="beamline/utils/package-summary.html">beamline.utils</a></dt>
-<dd>
-<div class="block">This class contains some utility methods useful to handle and process events.</div>
-</dd>
 <dt><a href="beamline/filters/ExcludeActivitiesFilter.html" title="class in beamline.filters"><span class="typeNameLink">ExcludeActivitiesFilter</span></a> - Class in <a href="beamline/filters/package-summary.html">beamline.filters</a></dt>
 <dd>
 <div class="block">A specific instance of the <a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters"><code>ExcludeOnEventAttributeEqualityFilter</code></a> that
@@ -217,7 +228,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Constructors</div>
 </dd>
-<dt><a href="beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">ExcludeOnCaseAttributeEqualityFilter</span></a>&lt;<a href="beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html" title="type parameter in ExcludeOnCaseAttributeEqualityFilter">T</a> extends org.deckfour.xes.model.XAttribute&gt; - Class in <a href="beamline/filters/package-summary.html">beamline.filters</a></dt>
+<dt><a href="beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">ExcludeOnCaseAttributeEqualityFilter</span></a>&lt;<a href="beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html" title="type parameter in ExcludeOnCaseAttributeEqualityFilter">T</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt; - Class in <a href="beamline/filters/package-summary.html">beamline.filters</a></dt>
 <dd>
 <div class="block">This filter excludes events based on the equality of a certain trace
  attribute to a given set of values.</div>
@@ -226,7 +237,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Constructor</div>
 </dd>
-<dt><a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">ExcludeOnEventAttributeEqualityFilter</span></a>&lt;<a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="type parameter in ExcludeOnEventAttributeEqualityFilter">T</a> extends org.deckfour.xes.model.XAttribute&gt; - Class in <a href="beamline/filters/package-summary.html">beamline.filters</a></dt>
+<dt><a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">ExcludeOnEventAttributeEqualityFilter</span></a>&lt;<a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="type parameter in ExcludeOnEventAttributeEqualityFilter">T</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt; - Class in <a href="beamline/filters/package-summary.html">beamline.filters</a></dt>
 <dd>
 <div class="block">This filter excludes events based on the equality of a certain event
  attribute to a given set of values.</div>
@@ -236,88 +247,105 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <div class="block">Constructor</div>
 </dd>
 </dl>
+<a id="I:F">
+<!--   -->
+</a>
+<h2 class="title">F</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html#filter(beamline.events.BEvent)">filter(BEvent)</a></span> - Method in class beamline.filters.<a href="beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnCaseAttributeEqualityFilter</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html#filter(beamline.events.BEvent)">filter(BEvent)</a></span> - Method in class beamline.filters.<a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnEventAttributeEqualityFilter</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/filters/RetainOnCaseAttributeEqualityFilter.html#filter(beamline.events.BEvent)">filter(BEvent)</a></span> - Method in class beamline.filters.<a href="beamline/filters/RetainOnCaseAttributeEqualityFilter.html" title="class in beamline.filters">RetainOnCaseAttributeEqualityFilter</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html#filter(beamline.events.BEvent)">filter(BEvent)</a></span> - Method in class beamline.filters.<a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters">RetainOnEventAttributeEqualityFilter</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/models/algorithms/StreamMiningAlgorithm.html#flatMap(beamline.events.BEvent,org.apache.flink.util.Collector)">flatMap(BEvent, Collector&lt;T&gt;)</a></span> - Method in class beamline.models.algorithms.<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a></dt>
+<dd>&nbsp;</dd>
+</dl>
 <a id="I:G">
 <!--   -->
 </a>
 <h2 class="title">G</h2>
 <dl>
-<dt><span class="memberNameLink"><a href="beamline/models/responses/GraphvizResponse.html#generateDot()">generateDot()</a></span> - Method in interface beamline.models.responses.<a href="beamline/models/responses/GraphvizResponse.html" title="interface in beamline.models.responses">GraphvizResponse</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/models/responses/GraphvizResponse.html#generateDot()">generateDot()</a></span> - Method in class beamline.models.responses.<a href="beamline/models/responses/GraphvizResponse.html" title="class in beamline.models.responses">GraphvizResponse</a></dt>
 <dd>
 <div class="block">Returns the Dot representation of the response</div>
 </dd>
-<dt><span class="memberNameLink"><a href="beamline/utils/EventUtils.html#getActivityName(org.deckfour.xes.model.XTrace)">getActivityName(XTrace)</a></span> - Static method in class beamline.utils.<a href="beamline/utils/EventUtils.html" title="class in beamline.utils">EventUtils</a></dt>
-<dd>
-<div class="block">Extracts the activity name</div>
-</dd>
-<dt><span class="memberNameLink"><a href="beamline/mappers/DirectlyFollowsRelation.html#getCaseId()">getCaseId()</a></span> - Method in class beamline.mappers.<a href="beamline/mappers/DirectlyFollowsRelation.html" title="class in beamline.mappers">DirectlyFollowsRelation</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/models/responses/StringResponse.html#get()">get()</a></span> - Method in class beamline.models.responses.<a href="beamline/models/responses/StringResponse.html" title="class in beamline.models.responses">StringResponse</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/models/responses/DirectlyFollowsRelation.html#getCaseId()">getCaseId()</a></span> - Method in class beamline.models.responses.<a href="beamline/models/responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a></dt>
 <dd>
 <div class="block">Returns the case id this directly follows relation belongs to</div>
 </dd>
-<dt><span class="memberNameLink"><a href="beamline/utils/EventUtils.html#getCaseId(org.deckfour.xes.model.XTrace)">getCaseId(XTrace)</a></span> - Static method in class beamline.utils.<a href="beamline/utils/EventUtils.html" title="class in beamline.utils">EventUtils</a></dt>
-<dd>
-<div class="block">Extracts the case id</div>
-</dd>
-<dt><span class="memberNameLink"><a href="beamline/mappers/DirectlyFollowsRelation.html#getFirst()">getFirst()</a></span> - Method in class beamline.mappers.<a href="beamline/mappers/DirectlyFollowsRelation.html" title="class in beamline.mappers">DirectlyFollowsRelation</a></dt>
-<dd>
-<div class="block">Returns the first event</div>
-</dd>
-<dt><span class="memberNameLink"><a href="beamline/models/algorithms/StreamMiningAlgorithm.html#getLatestResponse()">getLatestResponse()</a></span> - Method in class beamline.models.algorithms.<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a></dt>
-<dd>
-<div class="block">Returns the latest result of the mining</div>
-</dd>
-<dt><span class="memberNameLink"><a href="beamline/sources/CSVLogSource.html#getObservable()">getObservable()</a></span> - Method in class beamline.sources.<a href="beamline/sources/CSVLogSource.html" title="class in beamline.sources">CSVLogSource</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#getEventAttributes()">getEventAttributes()</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#getEventName()">getEventName()</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="beamline/sources/MQTTXesSource.html#getObservable()">getObservable()</a></span> - Method in class beamline.sources.<a href="beamline/sources/MQTTXesSource.html" title="class in beamline.sources">MQTTXesSource</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#getEventTime()">getEventTime()</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="beamline/sources/Source.html#getObservable()">getObservable()</a></span> - Method in interface beamline.sources.<a href="beamline/sources/Source.html" title="interface in beamline.sources">Source</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/models/responses/DirectlyFollowsRelation.html#getFrom()">getFrom()</a></span> - Method in class beamline.models.responses.<a href="beamline/models/responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a></dt>
 <dd>
-<div class="block">This method returns the observable created by the source.</div>
+<div class="block">Returns the source event</div>
 </dd>
-<dt><span class="memberNameLink"><a href="beamline/sources/XesLogSource.html#getObservable()">getObservable()</a></span> - Method in class beamline.sources.<a href="beamline/sources/XesLogSource.html" title="class in beamline.sources">XesLogSource</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#getLogAttributes()">getLogAttributes()</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="beamline/models/algorithms/StreamMiningAlgorithm.html#getProcessedEvents()">getProcessedEvents()</a></span> - Method in class beamline.models.algorithms.<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a></dt>
 <dd>
 <div class="block">Returns the total number of events processed so far</div>
 </dd>
-<dt><span class="memberNameLink"><a href="beamline/mappers/DirectlyFollowsRelation.html#getSecond()">getSecond()</a></span> - Method in class beamline.mappers.<a href="beamline/mappers/DirectlyFollowsRelation.html" title="class in beamline.mappers">DirectlyFollowsRelation</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/models/responses/Response.html#getProcessedEvents()">getProcessedEvents()</a></span> - Method in class beamline.models.responses.<a href="beamline/models/responses/Response.html" title="class in beamline.models.responses">Response</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#getProcessName()">getProcessName()</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/models/responses/DirectlyFollowsRelation.html#getTo()">getTo()</a></span> - Method in class beamline.models.responses.<a href="beamline/models/responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a></dt>
 <dd>
-<div class="block">Returns the second event</div>
+<div class="block">Returns the target event</div>
 </dd>
-<dt><a href="beamline/models/responses/GraphvizResponse.html" title="interface in beamline.models.responses"><span class="typeNameLink">GraphvizResponse</span></a> - Interface in <a href="beamline/models/responses/package-summary.html">beamline.models.responses</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#getTraceAttributes()">getTraceAttributes()</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#getTraceName()">getTraceName()</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="beamline/models/responses/GraphvizResponse.html" title="class in beamline.models.responses"><span class="typeNameLink">GraphvizResponse</span></a> - Class in <a href="beamline/models/responses/package-summary.html">beamline.models.responses</a></dt>
 <dd>
-<div class="block">A refined <a href="beamline/models/responses/Response.html" title="interface in beamline.models.responses"><code>Response</code></a> that can be rendered in Graphviz using the Dot
+<div class="block">A refined <a href="beamline/models/responses/Response.html" title="class in beamline.models.responses"><code>Response</code></a> that can be rendered in Graphviz using the Dot
  language.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="beamline/models/responses/GraphvizResponse.html#%3Cinit%3E()">GraphvizResponse()</a></span> - Constructor for class beamline.models.responses.<a href="beamline/models/responses/GraphvizResponse.html" title="class in beamline.models.responses">GraphvizResponse</a></dt>
+<dd>&nbsp;</dd>
 </dl>
 <a id="I:H">
 <!--   -->
 </a>
 <h2 class="title">H</h2>
 <dl>
-<dt><a href="beamline/models/algorithms/HookEventProcessing.html" title="interface in beamline.models.algorithms"><span class="typeNameLink">HookEventProcessing</span></a> - Interface in <a href="beamline/models/algorithms/package-summary.html">beamline.models.algorithms</a></dt>
-<dd>
-<div class="block">This interface defines the structure of the callback function that a
- <a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms"><code>StreamMiningAlgorithm</code></a> can execute (cf.,
- <a href="beamline/models/algorithms/StreamMiningAlgorithm.html#setOnBeforeEvent(beamline.models.algorithms.HookEventProcessing)"><code>StreamMiningAlgorithm.setOnBeforeEvent(HookEventProcessing)</code></a> and
- <a href="beamline/models/algorithms/StreamMiningAlgorithm.html#setOnAfterEvent(beamline.models.algorithms.HookEventProcessing)"><code>StreamMiningAlgorithm.setOnAfterEvent(HookEventProcessing)</code></a>).</div>
-</dd>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#hashCode()">hashCode()</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/models/responses/DirectlyFollowsRelation.html#hashCode()">hashCode()</a></span> - Method in class beamline.models.responses.<a href="beamline/models/responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a></dt>
+<dd>&nbsp;</dd>
 </dl>
 <a id="I:I">
 <!--   -->
 </a>
 <h2 class="title">I</h2>
 <dl>
-<dt><a href="beamline/mappers/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.mappers"><span class="typeNameLink">InfiniteSizeDirectlyFollowsMapper</span></a> - Class in <a href="beamline/mappers/package-summary.html">beamline.mappers</a></dt>
+<dt><a href="beamline/models/algorithms/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms"><span class="typeNameLink">InfiniteSizeDirectlyFollowsMapper</span></a> - Class in <a href="beamline/models/algorithms/package-summary.html">beamline.models.algorithms</a></dt>
 <dd>
 <div class="block">This mapper transforms a stream of <code>XTrace</code>s into a stream of
- <a href="beamline/mappers/DirectlyFollowsRelation.html" title="class in beamline.mappers"><code>DirectlyFollowsRelation</code></a>s.</div>
+ <a href="beamline/models/responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses"><code>DirectlyFollowsRelation</code></a>s.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="beamline/mappers/InfiniteSizeDirectlyFollowsMapper.html#%3Cinit%3E()">InfiniteSizeDirectlyFollowsMapper()</a></span> - Constructor for class beamline.mappers.<a href="beamline/mappers/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.mappers">InfiniteSizeDirectlyFollowsMapper</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/models/algorithms/InfiniteSizeDirectlyFollowsMapper.html#%3Cinit%3E()">InfiniteSizeDirectlyFollowsMapper()</a></span> - Constructor for class beamline.models.algorithms.<a href="beamline/models/algorithms/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms">InfiniteSizeDirectlyFollowsMapper</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="beamline/models/algorithms/StreamMiningAlgorithm.html#ingest(T)">ingest(T)</a></span> - Method in class beamline.models.algorithms.<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/models/algorithms/InfiniteSizeDirectlyFollowsMapper.html#ingest(beamline.events.BEvent)">ingest(BEvent)</a></span> - Method in class beamline.models.algorithms.<a href="beamline/models/algorithms/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms">InfiniteSizeDirectlyFollowsMapper</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/models/algorithms/StreamMiningAlgorithm.html#ingest(beamline.events.BEvent)">ingest(BEvent)</a></span> - Method in class beamline.models.algorithms.<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a></dt>
 <dd>
 <div class="block">This abstract method is what each derive class is expected to implement.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="beamline/sources/BeamlineAbstractSource.html#isRunning()">isRunning()</a></span> - Method in class beamline.sources.<a href="beamline/sources/BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a></dt>
+<dd>
+<div class="block">Returns if the source is still generting events</div>
+</dd>
 </dl>
 <a id="I:M">
 <!--   -->
@@ -326,31 +354,30 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dl>
 <dt><a href="beamline/sources/MQTTXesSource.html" title="class in beamline.sources"><span class="typeNameLink">MQTTXesSource</span></a> - Class in <a href="beamline/sources/package-summary.html">beamline.sources</a></dt>
 <dd>
-<div class="block">This implementation of a <a href="beamline/sources/XesSource.html" title="interface in beamline.sources"><code>XesSource</code></a> produces events as they are
- observed in an MQTT-XES broker.</div>
+<div class="block">This implementation of a <a href="beamline/sources/BeamlineAbstractSource.html" title="class in beamline.sources"><code>BeamlineAbstractSource</code></a> produces events as
+ they are observed in an MQTT-XES broker.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="beamline/sources/MQTTXesSource.html#%3Cinit%3E(java.lang.String,java.lang.String,java.lang.String)">MQTTXesSource(String, String, String)</a></span> - Constructor for class beamline.sources.<a href="beamline/sources/MQTTXesSource.html" title="class in beamline.sources">MQTTXesSource</a></dt>
 <dd>
 <div class="block">Constructs the source</div>
 </dd>
 </dl>
+<a id="I:O">
+<!--   -->
+</a>
+<h2 class="title">O</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="beamline/models/algorithms/StreamMiningAlgorithm.html#open(org.apache.flink.configuration.Configuration)">open(Configuration)</a></span> - Method in class beamline.models.algorithms.<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a></dt>
+<dd>&nbsp;</dd>
+</dl>
 <a id="I:P">
 <!--   -->
 </a>
 <h2 class="title">P</h2>
 <dl>
-<dt><span class="memberNameLink"><a href="beamline/sources/CSVLogSource.html#prepare()">prepare()</a></span> - Method in class beamline.sources.<a href="beamline/sources/CSVLogSource.html" title="class in beamline.sources">CSVLogSource</a></dt>
-<dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="beamline/sources/MQTTXesSource.html#prepare()">prepare()</a></span> - Method in class beamline.sources.<a href="beamline/sources/MQTTXesSource.html" title="class in beamline.sources">MQTTXesSource</a></dt>
-<dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="beamline/sources/Source.html#prepare()">prepare()</a></span> - Method in interface beamline.sources.<a href="beamline/sources/Source.html" title="interface in beamline.sources">Source</a></dt>
-<dd>
-<div class="block">This method is supposed to be called before the <a href="beamline/sources/Source.html#getObservable()"><code>Source.getObservable()</code></a>
- one: it is in charge of preparing the source to be processed.</div>
-</dd>
-<dt><span class="memberNameLink"><a href="beamline/sources/XesLogSource.html#prepare()">prepare()</a></span> - Method in class beamline.sources.<a href="beamline/sources/XesLogSource.html" title="class in beamline.sources">XesLogSource</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/sources/CSVLogSource.ParserConfiguration.html#%3Cinit%3E()">ParserConfiguration()</a></span> - Constructor for class beamline.sources.<a href="beamline/sources/CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">CSVLogSource.ParserConfiguration</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="beamline/models/algorithms/StreamMiningAlgorithm.html#process(T)">process(T)</a></span> - Method in class beamline.models.algorithms.<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/models/algorithms/StreamMiningAlgorithm.html#process(beamline.events.BEvent)">process(BEvent)</a></span> - Method in class beamline.models.algorithms.<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a></dt>
 <dd>&nbsp;</dd>
 </dl>
 <a id="I:R">
@@ -358,10 +385,12 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </a>
 <h2 class="title">R</h2>
 <dl>
-<dt><a href="beamline/models/responses/Response.html" title="interface in beamline.models.responses"><span class="typeNameLink">Response</span></a> - Interface in <a href="beamline/models/responses/package-summary.html">beamline.models.responses</a></dt>
+<dt><a href="beamline/models/responses/Response.html" title="class in beamline.models.responses"><span class="typeNameLink">Response</span></a> - Class in <a href="beamline/models/responses/package-summary.html">beamline.models.responses</a></dt>
 <dd>
 <div class="block">Marker interface used to define the type of the responses</div>
 </dd>
+<dt><span class="memberNameLink"><a href="beamline/models/responses/Response.html#%3Cinit%3E()">Response()</a></span> - Constructor for class beamline.models.responses.<a href="beamline/models/responses/Response.html" title="class in beamline.models.responses">Response</a></dt>
+<dd>&nbsp;</dd>
 <dt><a href="beamline/filters/RetainActivitiesFilter.html" title="class in beamline.filters"><span class="typeNameLink">RetainActivitiesFilter</span></a> - Class in <a href="beamline/filters/package-summary.html">beamline.filters</a></dt>
 <dd>
 <div class="block">A specific instance of the <a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters"><code>RetainOnEventAttributeEqualityFilter</code></a> that
@@ -371,7 +400,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Constructors</div>
 </dd>
-<dt><a href="beamline/filters/RetainOnCaseAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">RetainOnCaseAttributeEqualityFilter</span></a>&lt;<a href="beamline/filters/RetainOnCaseAttributeEqualityFilter.html" title="type parameter in RetainOnCaseAttributeEqualityFilter">T</a> extends org.deckfour.xes.model.XAttribute&gt; - Class in <a href="beamline/filters/package-summary.html">beamline.filters</a></dt>
+<dt><a href="beamline/filters/RetainOnCaseAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">RetainOnCaseAttributeEqualityFilter</span></a>&lt;<a href="beamline/filters/RetainOnCaseAttributeEqualityFilter.html" title="type parameter in RetainOnCaseAttributeEqualityFilter">T</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt; - Class in <a href="beamline/filters/package-summary.html">beamline.filters</a></dt>
 <dd>
 <div class="block">This filter retains events based on the equality of a certain trace
  attribute to a given set of values.</div>
@@ -380,7 +409,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Constructor</div>
 </dd>
-<dt><a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">RetainOnEventAttributeEqualityFilter</span></a>&lt;<a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html" title="type parameter in RetainOnEventAttributeEqualityFilter">T</a> extends org.deckfour.xes.model.XAttribute&gt; - Class in <a href="beamline/filters/package-summary.html">beamline.filters</a></dt>
+<dt><a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">RetainOnEventAttributeEqualityFilter</span></a>&lt;<a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html" title="type parameter in RetainOnEventAttributeEqualityFilter">T</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt; - Class in <a href="beamline/filters/package-summary.html">beamline.filters</a></dt>
 <dd>
 <div class="block">This filter retains events based on the equality of a certain event
  attribute to a given set of values.</div>
@@ -389,56 +418,81 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Constructor</div>
 </dd>
+<dt><span class="memberNameLink"><a href="beamline/sources/CSVLogSource.html#run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)">run(SourceFunction.SourceContext&lt;BEvent&gt;)</a></span> - Method in class beamline.sources.<a href="beamline/sources/CSVLogSource.html" title="class in beamline.sources">CSVLogSource</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/sources/MQTTXesSource.html#run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)">run(SourceFunction.SourceContext&lt;BEvent&gt;)</a></span> - Method in class beamline.sources.<a href="beamline/sources/MQTTXesSource.html" title="class in beamline.sources">MQTTXesSource</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/sources/StringTestSource.html#run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)">run(SourceFunction.SourceContext&lt;BEvent&gt;)</a></span> - Method in class beamline.sources.<a href="beamline/sources/StringTestSource.html" title="class in beamline.sources">StringTestSource</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/sources/XesLogSource.html#run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)">run(SourceFunction.SourceContext&lt;BEvent&gt;)</a></span> - Method in class beamline.sources.<a href="beamline/sources/XesLogSource.html" title="class in beamline.sources">XesLogSource</a></dt>
+<dd>&nbsp;</dd>
 </dl>
 <a id="I:S">
 <!--   -->
 </a>
 <h2 class="title">S</h2>
 <dl>
-<dt><span class="memberNameLink"><a href="beamline/models/algorithms/StreamMiningAlgorithm.html#setLatestResponse(K)">setLatestResponse(K)</a></span> - Method in class beamline.models.algorithms.<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/models/responses/StringResponse.html#set(java.lang.String)">set(String)</a></span> - Method in class beamline.models.responses.<a href="beamline/models/responses/StringResponse.html" title="class in beamline.models.responses">StringResponse</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#setEventAttribute(java.lang.String,java.io.Serializable)">setEventAttribute(String, Serializable)</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#setEventAttribute(java.lang.String,org.deckfour.xes.model.XAttribute)">setEventAttribute(String, XAttribute)</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#setEventName(java.lang.String)">setEventName(String)</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#setLogAttribute(java.lang.String,java.io.Serializable)">setLogAttribute(String, Serializable)</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#setLogAttribute(java.lang.String,org.deckfour.xes.model.XAttribute)">setLogAttribute(String, XAttribute)</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/models/responses/Response.html#setProcessedEvents(java.lang.Long)">setProcessedEvents(Long)</a></span> - Method in class beamline.models.responses.<a href="beamline/models/responses/Response.html" title="class in beamline.models.responses">Response</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#setProcessName(java.lang.String)">setProcessName(String)</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#setTimestamp(java.util.Date)">setTimestamp(Date)</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#setTraceAttribute(java.lang.String,java.io.Serializable)">setTraceAttribute(String, Serializable)</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#setTraceAttribute(java.lang.String,org.deckfour.xes.model.XAttribute)">setTraceAttribute(String, XAttribute)</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#setTraceName(java.lang.String)">setTraceName(String)</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="beamline/models/algorithms/StreamMiningAlgorithm.html#setOnAfterEvent(beamline.models.algorithms.HookEventProcessing)">setOnAfterEvent(HookEventProcessing)</a></span> - Method in class beamline.models.algorithms.<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a></dt>
-<dd>
-<div class="block">This method can be used to set a hook to a callback function to be
- executed after an event is processed</div>
-</dd>
-<dt><span class="memberNameLink"><a href="beamline/models/algorithms/StreamMiningAlgorithm.html#setOnBeforeEvent(beamline.models.algorithms.HookEventProcessing)">setOnBeforeEvent(HookEventProcessing)</a></span> - Method in class beamline.models.algorithms.<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a></dt>
-<dd>
-<div class="block">This method can be used to set a hook to a callback function to be
- executed before an event is processed</div>
-</dd>
-<dt><a href="beamline/sources/Source.html" title="interface in beamline.sources"><span class="typeNameLink">Source</span></a>&lt;<a href="beamline/sources/Source.html" title="type parameter in Source">T</a>&gt; - Interface in <a href="beamline/sources/package-summary.html">beamline.sources</a></dt>
-<dd>
-<div class="block">This interface is the base type that should be extended by all sources to be
- used in the framework.</div>
-</dd>
 <dt><a href="beamline/exceptions/SourceException.html" title="class in beamline.exceptions"><span class="typeNameLink">SourceException</span></a> - Exception in <a href="beamline/exceptions/package-summary.html">beamline.exceptions</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="beamline/exceptions/SourceException.html#%3Cinit%3E(java.lang.String)">SourceException(String)</a></span> - Constructor for exception beamline.exceptions.<a href="beamline/exceptions/SourceException.html" title="class in beamline.exceptions">SourceException</a></dt>
 <dd>&nbsp;</dd>
-<dt><a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms"><span class="typeNameLink">StreamMiningAlgorithm</span></a>&lt;<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a>,&#8203;<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">K</a>&gt; - Class in <a href="beamline/models/algorithms/package-summary.html">beamline.models.algorithms</a></dt>
+<dt><a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms"><span class="typeNameLink">StreamMiningAlgorithm</span></a>&lt;<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a> extends <a href="beamline/models/responses/Response.html" title="class in beamline.models.responses">Response</a>&gt; - Class in <a href="beamline/models/algorithms/package-summary.html">beamline.models.algorithms</a></dt>
 <dd>
 <div class="block">This abstract class defines the root of the mining algorithms hierarchy.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="beamline/models/algorithms/StreamMiningAlgorithm.html#%3Cinit%3E()">StreamMiningAlgorithm()</a></span> - Constructor for class beamline.models.algorithms.<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a></dt>
 <dd>&nbsp;</dd>
+<dt><a href="beamline/models/responses/StringResponse.html" title="class in beamline.models.responses"><span class="typeNameLink">StringResponse</span></a> - Class in <a href="beamline/models/responses/package-summary.html">beamline.models.responses</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/models/responses/StringResponse.html#%3Cinit%3E(java.lang.String)">StringResponse(String)</a></span> - Constructor for class beamline.models.responses.<a href="beamline/models/responses/StringResponse.html" title="class in beamline.models.responses">StringResponse</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="beamline/sources/StringTestSource.html" title="class in beamline.sources"><span class="typeNameLink">StringTestSource</span></a> - Class in <a href="beamline/sources/package-summary.html">beamline.sources</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="beamline/sources/StringTestSource.html#%3Cinit%3E(java.lang.String...)">StringTestSource(String...)</a></span> - Constructor for class beamline.sources.<a href="beamline/sources/StringTestSource.html" title="class in beamline.sources">StringTestSource</a></dt>
+<dd>&nbsp;</dd>
 </dl>
 <a id="I:T">
 <!--   -->
 </a>
 <h2 class="title">T</h2>
 <dl>
-<dt><span class="memberNameLink"><a href="beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html#test(org.deckfour.xes.model.XTrace)">test(XTrace)</a></span> - Method in class beamline.filters.<a href="beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnCaseAttributeEqualityFilter</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/events/BEvent.html#toString()">toString()</a></span> - Method in class beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html#test(org.deckfour.xes.model.XTrace)">test(XTrace)</a></span> - Method in class beamline.filters.<a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnEventAttributeEqualityFilter</a></dt>
+<dt><span class="memberNameLink"><a href="beamline/models/responses/StringResponse.html#toString()">toString()</a></span> - Method in class beamline.models.responses.<a href="beamline/models/responses/StringResponse.html" title="class in beamline.models.responses">StringResponse</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="beamline/filters/RetainOnCaseAttributeEqualityFilter.html#test(org.deckfour.xes.model.XTrace)">test(XTrace)</a></span> - Method in class beamline.filters.<a href="beamline/filters/RetainOnCaseAttributeEqualityFilter.html" title="class in beamline.filters">RetainOnCaseAttributeEqualityFilter</a></dt>
-<dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html#test(org.deckfour.xes.model.XTrace)">test(XTrace)</a></span> - Method in class beamline.filters.<a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters">RetainOnEventAttributeEqualityFilter</a></dt>
-<dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="beamline/models/algorithms/HookEventProcessing.html#trigger()">trigger()</a></span> - Method in interface beamline.models.algorithms.<a href="beamline/models/algorithms/HookEventProcessing.html" title="interface in beamline.models.algorithms">HookEventProcessing</a></dt>
+</dl>
+<a id="I:W">
+<!--   -->
+</a>
+<h2 class="title">W</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="beamline/sources/CSVLogSource.ParserConfiguration.html#withSeparator(char)">withSeparator(char)</a></span> - Method in class beamline.sources.<a href="beamline/sources/CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">CSVLogSource.ParserConfiguration</a></dt>
 <dd>
-<div class="block">The actual function to trigger</div>
+<div class="block">Configures the fields separator</div>
 </dd>
 </dl>
 <a id="I:X">
@@ -448,8 +502,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dl>
 <dt><a href="beamline/sources/XesLogSource.html" title="class in beamline.sources"><span class="typeNameLink">XesLogSource</span></a> - Class in <a href="beamline/sources/package-summary.html">beamline.sources</a></dt>
 <dd>
-<div class="block">This implementation of a <a href="beamline/sources/XesSource.html" title="interface in beamline.sources"><code>XesSource</code></a> produces events according to the
- events contained in an <code>XLog</code>.</div>
+<div class="block">This implementation of a <a href="beamline/sources/BeamlineAbstractSource.html" title="class in beamline.sources"><code>BeamlineAbstractSource</code></a> produces events
+ according to the events contained in an <code>XLog</code>.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="beamline/sources/XesLogSource.html#%3Cinit%3E(java.lang.String)">XesLogSource(String)</a></span> - Constructor for class beamline.sources.<a href="beamline/sources/XesLogSource.html" title="class in beamline.sources">XesLogSource</a></dt>
 <dd>
@@ -459,13 +513,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Constructs a source from the given log</div>
 </dd>
-<dt><a href="beamline/sources/XesSource.html" title="interface in beamline.sources"><span class="typeNameLink">XesSource</span></a> - Interface in <a href="beamline/sources/package-summary.html">beamline.sources</a></dt>
-<dd>
-<div class="block">This interface is supposed just to bind the type of <a href="beamline/sources/Source.html" title="interface in beamline.sources"><code>Source</code></a> to
- <code>XTrace</code>.</div>
-</dd>
 </dl>
-<a href="#I:A">A</a>&nbsp;<a href="#I:B">B</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:D">D</a>&nbsp;<a href="#I:E">E</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:H">H</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:M">M</a>&nbsp;<a href="#I:P">P</a>&nbsp;<a href="#I:R">R</a>&nbsp;<a href="#I:S">S</a>&nbsp;<a href="#I:T">T</a>&nbsp;<a href="#I:X">X</a>&nbsp;<br><a href="allclasses-index.html">All&nbsp;Classes</a>&nbsp;<a href="allpackages-index.html">All&nbsp;Packages</a></div>
+<a href="#I:A">A</a>&nbsp;<a href="#I:B">B</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:D">D</a>&nbsp;<a href="#I:E">E</a>&nbsp;<a href="#I:F">F</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:H">H</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:M">M</a>&nbsp;<a href="#I:O">O</a>&nbsp;<a href="#I:P">P</a>&nbsp;<a href="#I:R">R</a>&nbsp;<a href="#I:S">S</a>&nbsp;<a href="#I:T">T</a>&nbsp;<a href="#I:W">W</a>&nbsp;<a href="#I:X">X</a>&nbsp;<br><a href="allclasses-index.html">All&nbsp;Classes</a>&nbsp;<a href="allpackages-index.html">All&nbsp;Packages</a></div>
 </main>
 <footer role="contentinfo">
 <nav role="navigation">
diff --git a/index.html b/index.html
index 95aa90f..d17bd90 100644
--- a/index.html
+++ b/index.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Overview (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
@@ -105,20 +105,17 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </tr>
 <tbody>
 <tr class="altColor" id="i0">
-<th class="colFirst" scope="row"><a href="beamline/exceptions/package-summary.html">beamline.exceptions</a></th>
+<th class="colFirst" scope="row"><a href="beamline/events/package-summary.html">beamline.events</a></th>
 <td class="colLast">&nbsp;</td>
 </tr>
 <tr class="rowColor" id="i1">
-<th class="colFirst" scope="row"><a href="beamline/filters/package-summary.html">beamline.filters</a></th>
-<td class="colLast">
-<div class="block">This package contains some filters that are available by default in the
- framework.</div>
-</td>
+<th class="colFirst" scope="row"><a href="beamline/exceptions/package-summary.html">beamline.exceptions</a></th>
+<td class="colLast">&nbsp;</td>
 </tr>
 <tr class="altColor" id="i2">
-<th class="colFirst" scope="row"><a href="beamline/mappers/package-summary.html">beamline.mappers</a></th>
+<th class="colFirst" scope="row"><a href="beamline/filters/package-summary.html">beamline.filters</a></th>
 <td class="colLast">
-<div class="block">This package contains some mappers that are available by default in the
+<div class="block">This package contains some filters that are available by default in the
  framework.</div>
 </td>
 </tr>
@@ -140,14 +137,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <th class="colFirst" scope="row"><a href="beamline/sources/package-summary.html">beamline.sources</a></th>
 <td class="colLast">
 <div class="block">This package contains all classes necessary to construct
- <code>Observable</code>s that can be used in the rest of
- the project.</div>
-</td>
-</tr>
-<tr class="altColor" id="i6">
-<th class="colFirst" scope="row"><a href="beamline/utils/package-summary.html">beamline.utils</a></th>
-<td class="colLast">
-<div class="block">This package contains utility classes to be used throughout the framework.</div>
+ <code>RichSourceFunction</code>s
+ that can be used in the rest of the project.</div>
 </td>
 </tr>
 </tbody>
diff --git a/member-search-index.js b/member-search-index.js
index 9a264d5..8d2abe3 100644
--- a/member-search-index.js
+++ b/member-search-index.js
@@ -1 +1 @@
-memberSearchIndex = [{"p":"beamline.models.algorithms","c":"StreamMiningAlgorithm","l":"accept(T)"},{"p":"beamline.filters","c":"ExcludeOnEventAttributeEqualityFilter","l":"addValue(T)"},{"p":"beamline.filters","c":"RetainOnEventAttributeEqualityFilter","l":"addValue(T)"},{"p":"beamline.mappers","c":"InfiniteSizeDirectlyFollowsMapper","l":"apply(XTrace)","url":"apply(org.deckfour.xes.model.XTrace)"},{"p":"beamline.utils","c":"EventUtils","l":"create(String, String, Date, Collection<Pair<String, String>>)","url":"create(java.lang.String,java.lang.String,java.util.Date,java.util.Collection)"},{"p":"beamline.utils","c":"EventUtils","l":"create(String, String, Date)","url":"create(java.lang.String,java.lang.String,java.util.Date)"},{"p":"beamline.utils","c":"EventUtils","l":"create(String, String)","url":"create(java.lang.String,java.lang.String)"},{"p":"beamline.sources","c":"CSVLogSource","l":"CSVLogSource(String, int, int, CSVParser)","url":"%3Cinit%3E(java.lang.String,int,int,com.opencsv.CSVParser)"},{"p":"beamline.sources","c":"CSVLogSource","l":"CSVLogSource(String, int, int)","url":"%3Cinit%3E(java.lang.String,int,int)"},{"p":"beamline.mappers","c":"DirectlyFollowsRelation","l":"DirectlyFollowsRelation(String, XEvent, XEvent)","url":"%3Cinit%3E(java.lang.String,org.deckfour.xes.model.XEvent,org.deckfour.xes.model.XEvent)"},{"p":"beamline.exceptions","c":"EventException","l":"EventException(String)","url":"%3Cinit%3E(java.lang.String)"},{"p":"beamline.filters","c":"ExcludeActivitiesFilter","l":"ExcludeActivitiesFilter(String...)","url":"%3Cinit%3E(java.lang.String...)"},{"p":"beamline.filters","c":"ExcludeOnCaseAttributeEqualityFilter","l":"ExcludeOnCaseAttributeEqualityFilter(String, T...)","url":"%3Cinit%3E(java.lang.String,T...)"},{"p":"beamline.filters","c":"ExcludeOnEventAttributeEqualityFilter","l":"ExcludeOnEventAttributeEqualityFilter(String, T...)","url":"%3Cinit%3E(java.lang.String,T...)"},{"p":"beamline.models.responses","c":"GraphvizResponse","l":"generateDot()"},{"p":"beamline.utils","c":"EventUtils","l":"getActivityName(XTrace)","url":"getActivityName(org.deckfour.xes.model.XTrace)"},{"p":"beamline.mappers","c":"DirectlyFollowsRelation","l":"getCaseId()"},{"p":"beamline.utils","c":"EventUtils","l":"getCaseId(XTrace)","url":"getCaseId(org.deckfour.xes.model.XTrace)"},{"p":"beamline.mappers","c":"DirectlyFollowsRelation","l":"getFirst()"},{"p":"beamline.models.algorithms","c":"StreamMiningAlgorithm","l":"getLatestResponse()"},{"p":"beamline.sources","c":"CSVLogSource","l":"getObservable()"},{"p":"beamline.sources","c":"MQTTXesSource","l":"getObservable()"},{"p":"beamline.sources","c":"Source","l":"getObservable()"},{"p":"beamline.sources","c":"XesLogSource","l":"getObservable()"},{"p":"beamline.models.algorithms","c":"StreamMiningAlgorithm","l":"getProcessedEvents()"},{"p":"beamline.mappers","c":"DirectlyFollowsRelation","l":"getSecond()"},{"p":"beamline.mappers","c":"InfiniteSizeDirectlyFollowsMapper","l":"InfiniteSizeDirectlyFollowsMapper()","url":"%3Cinit%3E()"},{"p":"beamline.models.algorithms","c":"StreamMiningAlgorithm","l":"ingest(T)"},{"p":"beamline.sources","c":"MQTTXesSource","l":"MQTTXesSource(String, String, String)","url":"%3Cinit%3E(java.lang.String,java.lang.String,java.lang.String)"},{"p":"beamline.sources","c":"CSVLogSource","l":"prepare()"},{"p":"beamline.sources","c":"MQTTXesSource","l":"prepare()"},{"p":"beamline.sources","c":"Source","l":"prepare()"},{"p":"beamline.sources","c":"XesLogSource","l":"prepare()"},{"p":"beamline.models.algorithms","c":"StreamMiningAlgorithm","l":"process(T)"},{"p":"beamline.filters","c":"RetainActivitiesFilter","l":"RetainActivitiesFilter(String...)","url":"%3Cinit%3E(java.lang.String...)"},{"p":"beamline.filters","c":"RetainOnCaseAttributeEqualityFilter","l":"RetainOnCaseAttributeEqualityFilter(String, T...)","url":"%3Cinit%3E(java.lang.String,T...)"},{"p":"beamline.filters","c":"RetainOnEventAttributeEqualityFilter","l":"RetainOnEventAttributeEqualityFilter(String, T...)","url":"%3Cinit%3E(java.lang.String,T...)"},{"p":"beamline.models.algorithms","c":"StreamMiningAlgorithm","l":"setLatestResponse(K)"},{"p":"beamline.models.algorithms","c":"StreamMiningAlgorithm","l":"setOnAfterEvent(HookEventProcessing)","url":"setOnAfterEvent(beamline.models.algorithms.HookEventProcessing)"},{"p":"beamline.models.algorithms","c":"StreamMiningAlgorithm","l":"setOnBeforeEvent(HookEventProcessing)","url":"setOnBeforeEvent(beamline.models.algorithms.HookEventProcessing)"},{"p":"beamline.exceptions","c":"SourceException","l":"SourceException(String)","url":"%3Cinit%3E(java.lang.String)"},{"p":"beamline.models.algorithms","c":"StreamMiningAlgorithm","l":"StreamMiningAlgorithm()","url":"%3Cinit%3E()"},{"p":"beamline.filters","c":"ExcludeOnCaseAttributeEqualityFilter","l":"test(XTrace)","url":"test(org.deckfour.xes.model.XTrace)"},{"p":"beamline.filters","c":"ExcludeOnEventAttributeEqualityFilter","l":"test(XTrace)","url":"test(org.deckfour.xes.model.XTrace)"},{"p":"beamline.filters","c":"RetainOnCaseAttributeEqualityFilter","l":"test(XTrace)","url":"test(org.deckfour.xes.model.XTrace)"},{"p":"beamline.filters","c":"RetainOnEventAttributeEqualityFilter","l":"test(XTrace)","url":"test(org.deckfour.xes.model.XTrace)"},{"p":"beamline.models.algorithms","c":"HookEventProcessing","l":"trigger()"},{"p":"beamline.sources","c":"XesLogSource","l":"XesLogSource(String)","url":"%3Cinit%3E(java.lang.String)"},{"p":"beamline.sources","c":"XesLogSource","l":"XesLogSource(XLog)","url":"%3Cinit%3E(org.deckfour.xes.model.XLog)"}]
\ No newline at end of file
+memberSearchIndex = [{"p":"beamline.filters","c":"ExcludeOnEventAttributeEqualityFilter","l":"addValue(T)"},{"p":"beamline.filters","c":"RetainOnEventAttributeEqualityFilter","l":"addValue(T)"},{"p":"beamline.sources","c":"BeamlineAbstractSource","l":"BeamlineAbstractSource()","url":"%3Cinit%3E()"},{"p":"beamline.events","c":"BEvent","l":"BEvent()","url":"%3Cinit%3E()"},{"p":"beamline.sources","c":"BeamlineAbstractSource","l":"cancel()"},{"p":"beamline.events","c":"BEvent","l":"compareTo(BEvent)","url":"compareTo(beamline.events.BEvent)"},{"p":"beamline.events","c":"BEvent","l":"create(String, String, String, Date, Collection<Pair<String, String>>)","url":"create(java.lang.String,java.lang.String,java.lang.String,java.util.Date,java.util.Collection)"},{"p":"beamline.events","c":"BEvent","l":"create(String, String, String, Date)","url":"create(java.lang.String,java.lang.String,java.lang.String,java.util.Date)"},{"p":"beamline.events","c":"BEvent","l":"create(String, String, String)","url":"create(java.lang.String,java.lang.String,java.lang.String)"},{"p":"beamline.sources","c":"CSVLogSource","l":"CSVLogSource(String, int, int, CSVLogSource.ParserConfiguration)","url":"%3Cinit%3E(java.lang.String,int,int,beamline.sources.CSVLogSource.ParserConfiguration)"},{"p":"beamline.sources","c":"CSVLogSource","l":"CSVLogSource(String, int, int)","url":"%3Cinit%3E(java.lang.String,int,int)"},{"p":"beamline.models.responses","c":"DirectlyFollowsRelation","l":"DirectlyFollowsRelation(BEvent, BEvent)","url":"%3Cinit%3E(beamline.events.BEvent,beamline.events.BEvent)"},{"p":"beamline.events","c":"BEvent","l":"equals(Object)","url":"equals(java.lang.Object)"},{"p":"beamline.models.responses","c":"DirectlyFollowsRelation","l":"equals(Object)","url":"equals(java.lang.Object)"},{"p":"beamline.exceptions","c":"EventException","l":"EventException(String)","url":"%3Cinit%3E(java.lang.String)"},{"p":"beamline.filters","c":"ExcludeActivitiesFilter","l":"ExcludeActivitiesFilter(String...)","url":"%3Cinit%3E(java.lang.String...)"},{"p":"beamline.filters","c":"ExcludeOnCaseAttributeEqualityFilter","l":"ExcludeOnCaseAttributeEqualityFilter(String, T...)","url":"%3Cinit%3E(java.lang.String,T...)"},{"p":"beamline.filters","c":"ExcludeOnEventAttributeEqualityFilter","l":"ExcludeOnEventAttributeEqualityFilter(String, T...)","url":"%3Cinit%3E(java.lang.String,T...)"},{"p":"beamline.filters","c":"ExcludeOnCaseAttributeEqualityFilter","l":"filter(BEvent)","url":"filter(beamline.events.BEvent)"},{"p":"beamline.filters","c":"ExcludeOnEventAttributeEqualityFilter","l":"filter(BEvent)","url":"filter(beamline.events.BEvent)"},{"p":"beamline.filters","c":"RetainOnCaseAttributeEqualityFilter","l":"filter(BEvent)","url":"filter(beamline.events.BEvent)"},{"p":"beamline.filters","c":"RetainOnEventAttributeEqualityFilter","l":"filter(BEvent)","url":"filter(beamline.events.BEvent)"},{"p":"beamline.models.algorithms","c":"StreamMiningAlgorithm","l":"flatMap(BEvent, Collector<T>)","url":"flatMap(beamline.events.BEvent,org.apache.flink.util.Collector)"},{"p":"beamline.models.responses","c":"GraphvizResponse","l":"generateDot()"},{"p":"beamline.models.responses","c":"StringResponse","l":"get()"},{"p":"beamline.models.responses","c":"DirectlyFollowsRelation","l":"getCaseId()"},{"p":"beamline.events","c":"BEvent","l":"getEventAttributes()"},{"p":"beamline.events","c":"BEvent","l":"getEventName()"},{"p":"beamline.events","c":"BEvent","l":"getEventTime()"},{"p":"beamline.models.responses","c":"DirectlyFollowsRelation","l":"getFrom()"},{"p":"beamline.events","c":"BEvent","l":"getLogAttributes()"},{"p":"beamline.models.algorithms","c":"StreamMiningAlgorithm","l":"getProcessedEvents()"},{"p":"beamline.models.responses","c":"Response","l":"getProcessedEvents()"},{"p":"beamline.events","c":"BEvent","l":"getProcessName()"},{"p":"beamline.models.responses","c":"DirectlyFollowsRelation","l":"getTo()"},{"p":"beamline.events","c":"BEvent","l":"getTraceAttributes()"},{"p":"beamline.events","c":"BEvent","l":"getTraceName()"},{"p":"beamline.models.responses","c":"GraphvizResponse","l":"GraphvizResponse()","url":"%3Cinit%3E()"},{"p":"beamline.events","c":"BEvent","l":"hashCode()"},{"p":"beamline.models.responses","c":"DirectlyFollowsRelation","l":"hashCode()"},{"p":"beamline.models.algorithms","c":"InfiniteSizeDirectlyFollowsMapper","l":"InfiniteSizeDirectlyFollowsMapper()","url":"%3Cinit%3E()"},{"p":"beamline.models.algorithms","c":"InfiniteSizeDirectlyFollowsMapper","l":"ingest(BEvent)","url":"ingest(beamline.events.BEvent)"},{"p":"beamline.models.algorithms","c":"StreamMiningAlgorithm","l":"ingest(BEvent)","url":"ingest(beamline.events.BEvent)"},{"p":"beamline.sources","c":"BeamlineAbstractSource","l":"isRunning()"},{"p":"beamline.sources","c":"MQTTXesSource","l":"MQTTXesSource(String, String, String)","url":"%3Cinit%3E(java.lang.String,java.lang.String,java.lang.String)"},{"p":"beamline.models.algorithms","c":"StreamMiningAlgorithm","l":"open(Configuration)","url":"open(org.apache.flink.configuration.Configuration)"},{"p":"beamline.sources","c":"CSVLogSource.ParserConfiguration","l":"ParserConfiguration()","url":"%3Cinit%3E()"},{"p":"beamline.models.algorithms","c":"StreamMiningAlgorithm","l":"process(BEvent)","url":"process(beamline.events.BEvent)"},{"p":"beamline.models.responses","c":"Response","l":"Response()","url":"%3Cinit%3E()"},{"p":"beamline.filters","c":"RetainActivitiesFilter","l":"RetainActivitiesFilter(String...)","url":"%3Cinit%3E(java.lang.String...)"},{"p":"beamline.filters","c":"RetainOnCaseAttributeEqualityFilter","l":"RetainOnCaseAttributeEqualityFilter(String, T...)","url":"%3Cinit%3E(java.lang.String,T...)"},{"p":"beamline.filters","c":"RetainOnEventAttributeEqualityFilter","l":"RetainOnEventAttributeEqualityFilter(String, T...)","url":"%3Cinit%3E(java.lang.String,T...)"},{"p":"beamline.sources","c":"CSVLogSource","l":"run(SourceFunction.SourceContext<BEvent>)","url":"run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)"},{"p":"beamline.sources","c":"MQTTXesSource","l":"run(SourceFunction.SourceContext<BEvent>)","url":"run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)"},{"p":"beamline.sources","c":"StringTestSource","l":"run(SourceFunction.SourceContext<BEvent>)","url":"run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)"},{"p":"beamline.sources","c":"XesLogSource","l":"run(SourceFunction.SourceContext<BEvent>)","url":"run(org.apache.flink.streaming.api.functions.source.SourceFunction.SourceContext)"},{"p":"beamline.models.responses","c":"StringResponse","l":"set(String)","url":"set(java.lang.String)"},{"p":"beamline.events","c":"BEvent","l":"setEventAttribute(String, Serializable)","url":"setEventAttribute(java.lang.String,java.io.Serializable)"},{"p":"beamline.events","c":"BEvent","l":"setEventAttribute(String, XAttribute)","url":"setEventAttribute(java.lang.String,org.deckfour.xes.model.XAttribute)"},{"p":"beamline.events","c":"BEvent","l":"setEventName(String)","url":"setEventName(java.lang.String)"},{"p":"beamline.events","c":"BEvent","l":"setLogAttribute(String, Serializable)","url":"setLogAttribute(java.lang.String,java.io.Serializable)"},{"p":"beamline.events","c":"BEvent","l":"setLogAttribute(String, XAttribute)","url":"setLogAttribute(java.lang.String,org.deckfour.xes.model.XAttribute)"},{"p":"beamline.models.responses","c":"Response","l":"setProcessedEvents(Long)","url":"setProcessedEvents(java.lang.Long)"},{"p":"beamline.events","c":"BEvent","l":"setProcessName(String)","url":"setProcessName(java.lang.String)"},{"p":"beamline.events","c":"BEvent","l":"setTimestamp(Date)","url":"setTimestamp(java.util.Date)"},{"p":"beamline.events","c":"BEvent","l":"setTraceAttribute(String, Serializable)","url":"setTraceAttribute(java.lang.String,java.io.Serializable)"},{"p":"beamline.events","c":"BEvent","l":"setTraceAttribute(String, XAttribute)","url":"setTraceAttribute(java.lang.String,org.deckfour.xes.model.XAttribute)"},{"p":"beamline.events","c":"BEvent","l":"setTraceName(String)","url":"setTraceName(java.lang.String)"},{"p":"beamline.exceptions","c":"SourceException","l":"SourceException(String)","url":"%3Cinit%3E(java.lang.String)"},{"p":"beamline.models.algorithms","c":"StreamMiningAlgorithm","l":"StreamMiningAlgorithm()","url":"%3Cinit%3E()"},{"p":"beamline.models.responses","c":"StringResponse","l":"StringResponse(String)","url":"%3Cinit%3E(java.lang.String)"},{"p":"beamline.sources","c":"StringTestSource","l":"StringTestSource(String...)","url":"%3Cinit%3E(java.lang.String...)"},{"p":"beamline.events","c":"BEvent","l":"toString()"},{"p":"beamline.models.responses","c":"StringResponse","l":"toString()"},{"p":"beamline.sources","c":"CSVLogSource.ParserConfiguration","l":"withSeparator(char)"},{"p":"beamline.sources","c":"XesLogSource","l":"XesLogSource(String)","url":"%3Cinit%3E(java.lang.String)"},{"p":"beamline.sources","c":"XesLogSource","l":"XesLogSource(XLog)","url":"%3Cinit%3E(org.deckfour.xes.model.XLog)"}]
\ No newline at end of file
diff --git a/member-search-index.zip b/member-search-index.zip
index 2cc8c1bb8fe6adfa297a9b5a0591ebaec9dd90d4..bcf6857ebf6456ec6b4ed4ae759d237175df0328 100644
GIT binary patch
delta 1229
zcmX@eKAVd-z?+#xgn@&DgW=Td%89(1^;aYB=HIs9`5)fJz-*&%;q*PeqYZJh<k;3+
zk4xrZ<*N>mF}wII!p`&EF1c^}<#SJO)IGiJkD$!23;dHsehPbbF8TX?e|N>l+ezGC
zBsOuJ5at%;*cqY6q_RG~$>8R}*e!K!9<iFLH_QSz{8L}37;K+!lsJVqaN4`F_>371
z&-d5I|A{JFRm<QSX%f5oNhimG3%_=&#pf;+G6|U7v-<0enfIzw)Rjalz9$}4T6V8C
zqFT&*f|9M|sRHq?&Ftx}%nIx#TnaL6Y7dUj;QFw0`eg42)#CxqTqhONSOQq@u_=qc
zoi6_Des+qUewYo9VnC1k^zTzTPw%>Nyk9hD=dS!O^)n|;aI0SAD$CiKq<AuCTL03I
zJI&4P-~1Ff*Ra++J$$zQ{Ga=#tqi@yDcL>cUuf#&YAuxx(f)Zi>;z5vCp>*)(y(mR
zC3#`7m*MuG``8|Cjj;bD+cJq`f?@v?&SR#+Gd4avFYOci&)Lpl#=+|yQ9FLk(bqro
zIj%9y{=;d>cZ?qO>vLY-&E2oK?b0^2>3W(h&kB#Gto|V6Fh|Sg>dq4X*G;R=Ug?}y
zdB`g1el$aA?A}A%uV!kpZ3_DwwL^+g@d&4j+Vi%@dQpL#cUy0`eklp637_CyFW}SO
zcF^<N8;9S2XX@un$@DF=oBdd}RE)tj{k#3!dWU4o$+fkO7Yoj_2G_SIH?nMIbImiH
zyXbG|K^>pRxn<suFJE0-Evl#Y*DE;0W9yxJF>g3~GYcH#6@FK*ef#jx-*tbTFZ}p$
zCQjZYw)u`TON9NyS=!Ouw-)Kx>+ps;hm_p^yF&ZyTL0aNwT61DpSQ?t|L0%TQm9><
z7H@ft+q_AhUHRa=Ww)7=FG+r_zsKG8c1lZZ+IsKJJI|-BvUu_8&f>WHVk<ZPJ9aQr
zLrC7;YQ}`Zo4*==XIP$9t86>?-Qj6st3q1wrshL#adn66<PRQh+uO8I_WijZCAYty
zvb0Xo60&hn2wnUx<5T48b3V)1_Z&+2q}Umx@prvb-v3X3-6w2)Y8v(a#O<qldnK#u
zkMEdqT%c0-aPG0}DQ_2O`5fb4x9wzj^QHo|<<--LAN^s=Q;BkvpY_DnH2K5awAYf+
zZid#Mc_z=Oe*8wEa^1%?hw8UVR`O@=eYaFP$Y`g0M<wuE)PyJf6<Q*DR-CqB*M3{R
zYf)iD>a?$!9+_uOOb%1sT6-xq@e1n?wuI-6A2-%F?J<4w;*I%4HD@>7&c)Lr#e-)#
z@63MxWr?ND)TI(EhnfF+ZCAX)BlYRqr_&ZIwP&zie%xuo5h!&;mgW9@1F0vhDeuaH
zu9`8$UE3SY6lApAZJE`jug90F)lORx@o~$MCDLbSbnGbQ*<_ho_sp%ur%@<Q&+3f!
z)rD6k@r8c7(o*jcZ{p$FzcKuORA{pA4+hn<2e;Y3=J~n#Ni6rWX=h$LoBYlVIQMDV
zhv`1kAIz55|MV-dZm+=#Vf*+VN#-?s7B;sBUtKM%o_BTSUc-}{eOTUdE~(g;w`%dO
zFFjJa^$9-a0>LUp4_Vo>sz2VjT^8!O*=_y#Ys&w!w_YjxXZ$lhUgtk^fHylw6lZX0
jB?|+CnKA=IfHxzP2m`#33PH$Cu4lGk+t0$lz`y_iOeRFh

delta 880
zcmbQub&#Dmz?+#xgn@&DgW*7K;Y41|`n}<~`L_%N{%MN_Ee&z{cPT$Ov@>v5X!iAW
z8@MuWu?zQIS>0)TJ8^07|KEBCAF37}s7#cPdhqVgo#gx7=k5QMEjrhJj^)Li%>pN4
zd>XZ#Diu^NpD(`pvaH5LBCAuaTqh;*!s#h19<NxukALDfxAeK+^Z4?P?O>bP$P-s9
z=l`(YPDV%JitSp}*+-<<_9vg385g(wnB<F+UoMqAd>i@~XmZb9d@fTYHz5Cz<h!uL
z6ZReyo%|qs-yX3!-S)5aOwTAR?$F=+(IZIyT!7f=-jEXwJ_qY(c1BDJ4_N(Jb!K6s
z;~L3$`LIp1-@8q4_$9%}E9b_Pe8Kjl-THtVwl9^9m(-tdsrcwHbI*;fyY}2MFgDo#
zqDjc_aDznfZiPgbAo1DrrQ>z;78)K5+YyqUSh(8YmR(BU@59TZ1$lyJ7Vg!J5>8lX
z_CMgS!&0W5iN#g-{3m_<QWKCeWsT>*8bfuZrVHWRn^-Rz?e&_&Cl<MGgIwcfmGwLm
zh2GA(Y{8rL?d7pG^=nkZ1FE-9yL%w}(ys}Z{bunRt-N`B-G$T3Z^`Xir@OWN>5hb1
zjkhw(Rih3!2t0C8+FG3ZwsuuQJ%5>DY<tBMuT9pgTrNLcSFkC!f5py9)fF6<Gh^q^
zSLvN6{^sq)6TCYaoF?2@u&(9Xs<M3yTTXU74Yz7Pba(3Y@V!S@O|kgpRe$M0T2#7t
z+S1nj7iDJtG@X2^>QCu1jU&5{HfYUty~S3up<MaYUzXqhn*4S!AG*8!Vg}DDPM67B
zU+ntCmNoBfv&f6^gC@Qzsjln9{wn@Z+VU)Suj8i$bJO4I>&gmt8GK(;{PE$Gn-fKk
z?dJL(dve0{f_q&mE+N-+*q<N$8W!o5P=EfG)x_SgneYEh(3+|G=9F@e(9Pm^A5<PD
zRIYJcbZGYFqg%cjE(&T}ap>yjrM6FgZ!kYByKMJ&JMNE@>Wtr3EZ2Y1d)ii5+poIE
z{*aGH!O}gscV`qoblsT6`%~T3@74$3z~>9rSUuNX_3gEy=jB63rgN?4tNt3#cKp$U
zdq4ZmKJec!=M?!Zl1uHgZlu5x=D@GFOQWxB$XWGM>T&q$<(ocxy}e)mk2%1boujlt
l(L<h@fnl*I14Do}Ba;XNJRgN1<R;%_v0+PPW?*1o002(_uOk2e

diff --git a/overview-summary.html b/overview-summary.html
index 3f2cfd3..96acccc 100644
--- a/overview-summary.html
+++ b/overview-summary.html
@@ -2,7 +2,7 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>framework 0.1.0 API</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <script type="text/javascript">window.location.replace('index.html')</script>
diff --git a/overview-tree.html b/overview-tree.html
index 406f6f1..2003cfe 100644
--- a/overview-tree.html
+++ b/overview-tree.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Class Hierarchy (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
@@ -97,13 +97,12 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <h1 class="title">Hierarchy For All Packages</h1>
 <span class="packageHierarchyLabel">Package Hierarchies:</span>
 <ul class="horizontal">
+<li><a href="beamline/events/package-tree.html">beamline.events</a>, </li>
 <li><a href="beamline/exceptions/package-tree.html">beamline.exceptions</a>, </li>
 <li><a href="beamline/filters/package-tree.html">beamline.filters</a>, </li>
-<li><a href="beamline/mappers/package-tree.html">beamline.mappers</a>, </li>
 <li><a href="beamline/models/algorithms/package-tree.html">beamline.models.algorithms</a>, </li>
 <li><a href="beamline/models/responses/package-tree.html">beamline.models.responses</a>, </li>
-<li><a href="beamline/sources/package-tree.html">beamline.sources</a>, </li>
-<li><a href="beamline/utils/package-tree.html">beamline.utils</a></li>
+<li><a href="beamline/sources/package-tree.html">beamline.sources</a></li>
 </ul>
 </div>
 <div class="contentContainer">
@@ -112,51 +111,62 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul>
 <li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink"><span class="typeNameLink">Object</span></a>
 <ul>
-<li class="circle">beamline.sources.<a href="beamline/sources/CSVLogSource.html" title="class in beamline.sources"><span class="typeNameLink">CSVLogSource</span></a> (implements beamline.sources.<a href="beamline/sources/XesSource.html" title="interface in beamline.sources">XesSource</a>)</li>
-<li class="circle">beamline.mappers.<a href="beamline/mappers/DirectlyFollowsRelation.html" title="class in beamline.mappers"><span class="typeNameLink">DirectlyFollowsRelation</span></a></li>
-<li class="circle">beamline.utils.<a href="beamline/utils/EventUtils.html" title="class in beamline.utils"><span class="typeNameLink">EventUtils</span></a></li>
-<li class="circle">beamline.filters.<a href="beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">ExcludeOnCaseAttributeEqualityFilter</span></a>&lt;T&gt; (implements io.reactivex.rxjava3.functions.Predicate&lt;T&gt;)</li>
-<li class="circle">beamline.filters.<a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">ExcludeOnEventAttributeEqualityFilter</span></a>&lt;T&gt; (implements io.reactivex.rxjava3.functions.Predicate&lt;T&gt;)
+<li class="circle">org.apache.flink.api.common.functions.AbstractRichFunction (implements org.apache.flink.api.common.functions.RichFunction, java.io.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>)
 <ul>
-<li class="circle">beamline.filters.<a href="beamline/filters/ExcludeActivitiesFilter.html" title="class in beamline.filters"><span class="typeNameLink">ExcludeActivitiesFilter</span></a></li>
+<li class="circle">org.apache.flink.api.common.functions.RichFlatMapFunction&lt;IN,&#8203;OUT&gt; (implements org.apache.flink.api.common.functions.FlatMapFunction&lt;T,&#8203;O&gt;)
+<ul>
+<li class="circle">beamline.models.algorithms.<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms"><span class="typeNameLink">StreamMiningAlgorithm</span></a>&lt;T&gt;
+<ul>
+<li class="circle">beamline.models.algorithms.<a href="beamline/models/algorithms/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms"><span class="typeNameLink">InfiniteSizeDirectlyFollowsMapper</span></a></li>
 </ul>
 </li>
-<li class="circle">beamline.mappers.<a href="beamline/mappers/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.mappers"><span class="typeNameLink">InfiniteSizeDirectlyFollowsMapper</span></a> (implements io.reactivex.rxjava3.functions.Function&lt;T,&#8203;R&gt;)</li>
-<li class="circle">beamline.sources.<a href="beamline/sources/MQTTXesSource.html" title="class in beamline.sources"><span class="typeNameLink">MQTTXesSource</span></a> (implements beamline.sources.<a href="beamline/sources/XesSource.html" title="interface in beamline.sources">XesSource</a>)</li>
-<li class="circle">beamline.filters.<a href="beamline/filters/RetainOnCaseAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">RetainOnCaseAttributeEqualityFilter</span></a>&lt;T&gt; (implements io.reactivex.rxjava3.functions.Predicate&lt;T&gt;)</li>
-<li class="circle">beamline.filters.<a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">RetainOnEventAttributeEqualityFilter</span></a>&lt;T&gt; (implements io.reactivex.rxjava3.functions.Predicate&lt;T&gt;)
-<ul>
-<li class="circle">beamline.filters.<a href="beamline/filters/RetainActivitiesFilter.html" title="class in beamline.filters"><span class="typeNameLink">RetainActivitiesFilter</span></a></li>
 </ul>
 </li>
-<li class="circle">beamline.models.algorithms.<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms"><span class="typeNameLink">StreamMiningAlgorithm</span></a>&lt;T,&#8203;K&gt; (implements io.reactivex.rxjava3.functions.Consumer&lt;T&gt;)</li>
-<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink"><span class="typeNameLink">Throwable</span></a> (implements java.io.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>)
+<li class="circle">org.apache.flink.streaming.api.functions.source.RichSourceFunction&lt;OUT&gt; (implements org.apache.flink.streaming.api.functions.source.SourceFunction&lt;T&gt;)
 <ul>
-<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink"><span class="typeNameLink">Exception</span></a>
+<li class="circle">beamline.sources.<a href="beamline/sources/BeamlineAbstractSource.html" title="class in beamline.sources"><span class="typeNameLink">BeamlineAbstractSource</span></a>
 <ul>
-<li class="circle">beamline.exceptions.<a href="beamline/exceptions/EventException.html" title="class in beamline.exceptions"><span class="typeNameLink">EventException</span></a></li>
-<li class="circle">beamline.exceptions.<a href="beamline/exceptions/SourceException.html" title="class in beamline.exceptions"><span class="typeNameLink">SourceException</span></a></li>
+<li class="circle">beamline.sources.<a href="beamline/sources/CSVLogSource.html" title="class in beamline.sources"><span class="typeNameLink">CSVLogSource</span></a></li>
+<li class="circle">beamline.sources.<a href="beamline/sources/MQTTXesSource.html" title="class in beamline.sources"><span class="typeNameLink">MQTTXesSource</span></a></li>
+<li class="circle">beamline.sources.<a href="beamline/sources/StringTestSource.html" title="class in beamline.sources"><span class="typeNameLink">StringTestSource</span></a></li>
+<li class="circle">beamline.sources.<a href="beamline/sources/XesLogSource.html" title="class in beamline.sources"><span class="typeNameLink">XesLogSource</span></a></li>
 </ul>
 </li>
 </ul>
 </li>
-<li class="circle">beamline.sources.<a href="beamline/sources/XesLogSource.html" title="class in beamline.sources"><span class="typeNameLink">XesLogSource</span></a> (implements beamline.sources.<a href="beamline/sources/XesSource.html" title="interface in beamline.sources">XesSource</a>)</li>
 </ul>
 </li>
+<li class="circle">beamline.events.<a href="beamline/events/BEvent.html" title="class in beamline.events"><span class="typeNameLink">BEvent</span></a> (implements java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>)</li>
+<li class="circle">beamline.sources.<a href="beamline/sources/CSVLogSource.ParserConfiguration.html" title="class in beamline.sources"><span class="typeNameLink">CSVLogSource.ParserConfiguration</span></a> (implements java.io.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>)</li>
+<li class="circle">beamline.filters.<a href="beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">ExcludeOnCaseAttributeEqualityFilter</span></a>&lt;T&gt; (implements org.apache.flink.api.common.functions.FilterFunction&lt;T&gt;)</li>
+<li class="circle">beamline.filters.<a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">ExcludeOnEventAttributeEqualityFilter</span></a>&lt;T&gt; (implements org.apache.flink.api.common.functions.FilterFunction&lt;T&gt;)
+<ul>
+<li class="circle">beamline.filters.<a href="beamline/filters/ExcludeActivitiesFilter.html" title="class in beamline.filters"><span class="typeNameLink">ExcludeActivitiesFilter</span></a></li>
 </ul>
-</section>
-<section role="region">
-<h2 title="Interface Hierarchy">Interface Hierarchy</h2>
+</li>
+<li class="circle">beamline.models.responses.<a href="beamline/models/responses/Response.html" title="class in beamline.models.responses"><span class="typeNameLink">Response</span></a> (implements java.io.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>)
 <ul>
-<li class="circle">beamline.models.algorithms.<a href="beamline/models/algorithms/HookEventProcessing.html" title="interface in beamline.models.algorithms"><span class="typeNameLink">HookEventProcessing</span></a></li>
-<li class="circle">beamline.models.responses.<a href="beamline/models/responses/Response.html" title="interface in beamline.models.responses"><span class="typeNameLink">Response</span></a>
+<li class="circle">beamline.models.responses.<a href="beamline/models/responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses"><span class="typeNameLink">DirectlyFollowsRelation</span></a></li>
+<li class="circle">beamline.models.responses.<a href="beamline/models/responses/GraphvizResponse.html" title="class in beamline.models.responses"><span class="typeNameLink">GraphvizResponse</span></a></li>
+<li class="circle">beamline.models.responses.<a href="beamline/models/responses/StringResponse.html" title="class in beamline.models.responses"><span class="typeNameLink">StringResponse</span></a></li>
+</ul>
+</li>
+<li class="circle">beamline.filters.<a href="beamline/filters/RetainOnCaseAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">RetainOnCaseAttributeEqualityFilter</span></a>&lt;T&gt; (implements org.apache.flink.api.common.functions.FilterFunction&lt;T&gt;)</li>
+<li class="circle">beamline.filters.<a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters"><span class="typeNameLink">RetainOnEventAttributeEqualityFilter</span></a>&lt;T&gt; (implements org.apache.flink.api.common.functions.FilterFunction&lt;T&gt;)
 <ul>
-<li class="circle">beamline.models.responses.<a href="beamline/models/responses/GraphvizResponse.html" title="interface in beamline.models.responses"><span class="typeNameLink">GraphvizResponse</span></a></li>
+<li class="circle">beamline.filters.<a href="beamline/filters/RetainActivitiesFilter.html" title="class in beamline.filters"><span class="typeNameLink">RetainActivitiesFilter</span></a></li>
 </ul>
 </li>
-<li class="circle">beamline.sources.<a href="beamline/sources/Source.html" title="interface in beamline.sources"><span class="typeNameLink">Source</span></a>&lt;T&gt;
+<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink"><span class="typeNameLink">Throwable</span></a> (implements java.io.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>)
+<ul>
+<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink"><span class="typeNameLink">Exception</span></a>
 <ul>
-<li class="circle">beamline.sources.<a href="beamline/sources/XesSource.html" title="interface in beamline.sources"><span class="typeNameLink">XesSource</span></a></li>
+<li class="circle">beamline.exceptions.<a href="beamline/exceptions/EventException.html" title="class in beamline.exceptions"><span class="typeNameLink">EventException</span></a></li>
+<li class="circle">beamline.exceptions.<a href="beamline/exceptions/SourceException.html" title="class in beamline.exceptions"><span class="typeNameLink">SourceException</span></a></li>
+</ul>
+</li>
+</ul>
+</li>
 </ul>
 </li>
 </ul>
diff --git a/package-search-index.js b/package-search-index.js
index 9567a26..1114d68 100644
--- a/package-search-index.js
+++ b/package-search-index.js
@@ -1 +1 @@
-packageSearchIndex = [{"l":"All Packages","url":"allpackages-index.html"},{"l":"beamline.exceptions"},{"l":"beamline.filters"},{"l":"beamline.mappers"},{"l":"beamline.models.algorithms"},{"l":"beamline.models.responses"},{"l":"beamline.sources"},{"l":"beamline.utils"}]
\ No newline at end of file
+packageSearchIndex = [{"l":"All Packages","url":"allpackages-index.html"},{"l":"beamline.events"},{"l":"beamline.exceptions"},{"l":"beamline.filters"},{"l":"beamline.models.algorithms"},{"l":"beamline.models.responses"},{"l":"beamline.sources"}]
\ No newline at end of file
diff --git a/package-search-index.zip b/package-search-index.zip
index efdb9bb0f4b27183f423c1bb5bbb246601fdd6f1..b8aee629c318b57239bdbb8574e12914c6c921b8 100644
GIT binary patch
delta 187
zcmbQmG>wTjz?+#xgn@&DgW=Td%89(%^*z>nha7lV*Ehwq+cL<SFK`!0`|P2!NB*X?
z2xnn=$AXw!Gb`W!QCZ3?8(Oa3S3d87$%Q28l&imzt4}IlGuXc5i`2f^+7>HQSZpTD
zF8?7FID5*SLi3AkuRB8AR<K`NIb)0EUw@uB`};3M;>5aV@7Ti_;LXmlvApV25d#Cm
c0|sdZh5&CyCJ_d>qe9@46R+8^?PLG}03o$TLI3~&

delta 191
zcmbQnG>eHhz?+#xgn@&DgW*7K;Y42T`d(|kLk0q@>zlUm*)hnPd-Q9FrF(|i)Nk3g
z)T3j!u!xn9wXy&EPbwEW&mBli`Tro2i}%VKX2}!rWmhatzM3ZGus-qrofc-3uE|%u
z*Ud`$Sz7KY`nuzQ<#*RvEJqEWr9@5tU~i~dX+701Fv$46@LDainp)-nZ+4Cz$0tY1
j7~~lkelRdF1b8zti7>z&76OrEVE8fdk{#P#1`q%M&KX8C

diff --git a/serialized-form.html b/serialized-form.html
index fcb130a..cd91ea0 100644
--- a/serialized-form.html
+++ b/serialized-form.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (11.0.11) on Thu Mar 17 13:46:00 UTC 2022 -->
+<!-- Generated by javadoc (11.0.11) on Fri Mar 25 19:30:20 UTC 2022 -->
 <title>Serialized Form (framework 0.1.0 API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2022-03-17">
+<meta name="dc.created" content="2022-03-25">
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="jquery/jquery-ui.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
@@ -100,6 +100,41 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="blockList">
 <li class="blockList">
 <section role="region">
+<h2 title="Package">Package&nbsp;beamline.events</h2>
+<ul class="blockList">
+<li class="blockList"><a id="beamline.events.BEvent">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/events/BEvent.html" title="class in beamline.events">beamline.events.BEvent</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a> implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>-7300189277034528917L</dd>
+</dl>
+<ul class="blockList">
+<li class="blockList">
+<h3>Serialized Fields</h3>
+<ul class="blockList">
+<li class="blockList">
+<h4>eventAttributes</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt; eventAttributes</pre>
+</li>
+<li class="blockList">
+<h4>logAttributes</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt; logAttributes</pre>
+</li>
+<li class="blockListLast">
+<h4>traceAttributes</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt; traceAttributes</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+</li>
+<li class="blockList">
+<section role="region">
 <h2 title="Package">Package&nbsp;beamline.exceptions</h2>
 <ul class="blockList">
 <li class="blockList"><a id="beamline.exceptions.EventException">
@@ -123,6 +158,390 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </ul>
 </section>
 </li>
+<li class="blockList">
+<section role="region">
+<h2 title="Package">Package&nbsp;beamline.filters</h2>
+<ul class="blockList">
+<li class="blockList"><a id="beamline.filters.ExcludeActivitiesFilter">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/filters/ExcludeActivitiesFilter.html" title="class in beamline.filters">beamline.filters.ExcludeActivitiesFilter</a> extends <a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters">ExcludeOnEventAttributeEqualityFilter</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt; implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>-5319332746992005641L</dd>
+</dl>
+</li>
+<li class="blockList"><a id="beamline.filters.ExcludeOnCaseAttributeEqualityFilter">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html" title="class in beamline.filters">beamline.filters.ExcludeOnCaseAttributeEqualityFilter</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a> implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>371257881178171433L</dd>
+</dl>
+<ul class="blockList">
+<li class="blockList">
+<h3>Serialized Fields</h3>
+<ul class="blockList">
+<li class="blockList">
+<h4>attributeName</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> attributeName</pre>
+</li>
+<li class="blockListLast">
+<h4>attributeValues</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Set.html?is-external=true" title="class or interface in java.util" class="externalLink">Set</a>&lt;<a href="beamline/filters/ExcludeOnCaseAttributeEqualityFilter.html" title="type parameter in ExcludeOnCaseAttributeEqualityFilter">T</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt; attributeValues</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="blockList"><a id="beamline.filters.ExcludeOnEventAttributeEqualityFilter">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="class in beamline.filters">beamline.filters.ExcludeOnEventAttributeEqualityFilter</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a> implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>1193680203608634150L</dd>
+</dl>
+<ul class="blockList">
+<li class="blockList">
+<h3>Serialized Fields</h3>
+<ul class="blockList">
+<li class="blockList">
+<h4>attributeName</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> attributeName</pre>
+</li>
+<li class="blockListLast">
+<h4>attributeValues</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Set.html?is-external=true" title="class or interface in java.util" class="externalLink">Set</a>&lt;<a href="beamline/filters/ExcludeOnEventAttributeEqualityFilter.html" title="type parameter in ExcludeOnEventAttributeEqualityFilter">T</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt; attributeValues</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="blockList"><a id="beamline.filters.RetainActivitiesFilter">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/filters/RetainActivitiesFilter.html" title="class in beamline.filters">beamline.filters.RetainActivitiesFilter</a> extends <a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters">RetainOnEventAttributeEqualityFilter</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt; implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>102039300555271213L</dd>
+</dl>
+</li>
+<li class="blockList"><a id="beamline.filters.RetainOnCaseAttributeEqualityFilter">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/filters/RetainOnCaseAttributeEqualityFilter.html" title="class in beamline.filters">beamline.filters.RetainOnCaseAttributeEqualityFilter</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a> implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>1225284800265650317L</dd>
+</dl>
+<ul class="blockList">
+<li class="blockList">
+<h3>Serialized Fields</h3>
+<ul class="blockList">
+<li class="blockList">
+<h4>attributeName</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> attributeName</pre>
+</li>
+<li class="blockListLast">
+<h4>attributeValues</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Set.html?is-external=true" title="class or interface in java.util" class="externalLink">Set</a>&lt;<a href="beamline/filters/RetainOnCaseAttributeEqualityFilter.html" title="type parameter in RetainOnCaseAttributeEqualityFilter">T</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt; attributeValues</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="blockList"><a id="beamline.filters.RetainOnEventAttributeEqualityFilter">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html" title="class in beamline.filters">beamline.filters.RetainOnEventAttributeEqualityFilter</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a> implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>-720485056040728235L</dd>
+</dl>
+<ul class="blockList">
+<li class="blockList">
+<h3>Serialized Fields</h3>
+<ul class="blockList">
+<li class="blockList">
+<h4>attributeName</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> attributeName</pre>
+</li>
+<li class="blockListLast">
+<h4>attributeValues</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Set.html?is-external=true" title="class or interface in java.util" class="externalLink">Set</a>&lt;<a href="beamline/filters/RetainOnEventAttributeEqualityFilter.html" title="type parameter in RetainOnEventAttributeEqualityFilter">T</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a>&gt; attributeValues</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+</li>
+<li class="blockList">
+<section role="region">
+<h2 title="Package">Package&nbsp;beamline.models.algorithms</h2>
+<ul class="blockList">
+<li class="blockList"><a id="beamline.models.algorithms.InfiniteSizeDirectlyFollowsMapper">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/models/algorithms/InfiniteSizeDirectlyFollowsMapper.html" title="class in beamline.models.algorithms">beamline.models.algorithms.InfiniteSizeDirectlyFollowsMapper</a> extends <a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">StreamMiningAlgorithm</a>&lt;<a href="beamline/models/responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses">DirectlyFollowsRelation</a>&gt; implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>9114527510820073110L</dd>
+</dl>
+<ul class="blockList">
+<li class="blockList">
+<h3>Serialized Fields</h3>
+<ul class="blockList">
+<li class="blockListLast">
+<h4>map</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a>&gt; map</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="blockList"><a id="beamline.models.algorithms.StreamMiningAlgorithm">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="class in beamline.models.algorithms">beamline.models.algorithms.StreamMiningAlgorithm</a> extends org.apache.flink.api.common.functions.RichFlatMapFunction&lt;<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a>,&#8203;<a href="beamline/models/algorithms/StreamMiningAlgorithm.html" title="type parameter in StreamMiningAlgorithm">T</a> extends <a href="beamline/models/responses/Response.html" title="class in beamline.models.responses">Response</a>&gt; implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>10170817098305999L</dd>
+</dl>
+</li>
+</ul>
+</section>
+</li>
+<li class="blockList">
+<section role="region">
+<h2 title="Package">Package&nbsp;beamline.models.responses</h2>
+<ul class="blockList">
+<li class="blockList"><a id="beamline.models.responses.DirectlyFollowsRelation">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/models/responses/DirectlyFollowsRelation.html" title="class in beamline.models.responses">beamline.models.responses.DirectlyFollowsRelation</a> extends <a href="beamline/models/responses/Response.html" title="class in beamline.models.responses">Response</a> implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>1775695752885219490L</dd>
+</dl>
+<ul class="blockList">
+<li class="blockList">
+<h3>Serialized Fields</h3>
+<ul class="blockList">
+<li class="blockListLast">
+<h4>pair</h4>
+<pre>org.apache.commons.lang3.tuple.Pair&lt;<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a>,&#8203;<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a>&gt; pair</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="blockList"><a id="beamline.models.responses.GraphvizResponse">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/models/responses/GraphvizResponse.html" title="class in beamline.models.responses">beamline.models.responses.GraphvizResponse</a> extends <a href="beamline/models/responses/Response.html" title="class in beamline.models.responses">Response</a> implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>7232727657074096321L</dd>
+</dl>
+</li>
+<li class="blockList"><a id="beamline.models.responses.Response">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/models/responses/Response.html" title="class in beamline.models.responses">beamline.models.responses.Response</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a> implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>3104314256198741100L</dd>
+</dl>
+<ul class="blockList">
+<li class="blockList">
+<h3>Serialized Fields</h3>
+<ul class="blockList">
+<li class="blockListLast">
+<h4>processedEvents</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a> processedEvents</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="blockList"><a id="beamline.models.responses.StringResponse">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/models/responses/StringResponse.html" title="class in beamline.models.responses">beamline.models.responses.StringResponse</a> extends <a href="beamline/models/responses/Response.html" title="class in beamline.models.responses">Response</a> implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>7863665787098981704L</dd>
+</dl>
+<ul class="blockList">
+<li class="blockList">
+<h3>Serialized Fields</h3>
+<ul class="blockList">
+<li class="blockListLast">
+<h4>str</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> str</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+</li>
+<li class="blockList">
+<section role="region">
+<h2 title="Package">Package&nbsp;beamline.sources</h2>
+<ul class="blockList">
+<li class="blockList"><a id="beamline.sources.BeamlineAbstractSource">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/sources/BeamlineAbstractSource.html" title="class in beamline.sources">beamline.sources.BeamlineAbstractSource</a> extends org.apache.flink.streaming.api.functions.source.RichSourceFunction&lt;<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a>&gt; implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>1072198158533070679L</dd>
+</dl>
+<ul class="blockList">
+<li class="blockList">
+<h3>Serialized Fields</h3>
+<ul class="blockList">
+<li class="blockListLast">
+<h4>running</h4>
+<pre>boolean running</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="blockList"><a id="beamline.sources.CSVLogSource">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/sources/CSVLogSource.html" title="class in beamline.sources">beamline.sources.CSVLogSource</a> extends <a href="beamline/sources/BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a> implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>205574514393782145L</dd>
+</dl>
+<ul class="blockList">
+<li class="blockList">
+<h3>Serialized Fields</h3>
+<ul class="blockList">
+<li class="blockList">
+<h4>activityNameColumn</h4>
+<pre>int activityNameColumn</pre>
+</li>
+<li class="blockList">
+<h4>caseIdColumn</h4>
+<pre>int caseIdColumn</pre>
+</li>
+<li class="blockList">
+<h4>filename</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> filename</pre>
+</li>
+<li class="blockListLast">
+<h4>parserConfiguration</h4>
+<pre><a href="beamline/sources/CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">CSVLogSource.ParserConfiguration</a> parserConfiguration</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="blockList"><a id="beamline.sources.CSVLogSource.ParserConfiguration">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/sources/CSVLogSource.ParserConfiguration.html" title="class in beamline.sources">beamline.sources.CSVLogSource.ParserConfiguration</a> extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a> implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>375203248074405954L</dd>
+</dl>
+<ul class="blockList">
+<li class="blockList">
+<h3>Serialized Fields</h3>
+<ul class="blockList">
+<li class="blockListLast">
+<h4>separator</h4>
+<pre>char separator</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="blockList"><a id="beamline.sources.MQTTXesSource">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/sources/MQTTXesSource.html" title="class in beamline.sources">beamline.sources.MQTTXesSource</a> extends <a href="beamline/sources/BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a> implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>7849358403852399322L</dd>
+</dl>
+<ul class="blockList">
+<li class="blockList">
+<h3>Serialized Fields</h3>
+<ul class="blockList">
+<li class="blockList">
+<h4>brokerHost</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> brokerHost</pre>
+</li>
+<li class="blockList">
+<h4>processName</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> processName</pre>
+</li>
+<li class="blockListLast">
+<h4>topicBase</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> topicBase</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="blockList"><a id="beamline.sources.StringTestSource">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/sources/StringTestSource.html" title="class in beamline.sources">beamline.sources.StringTestSource</a> extends <a href="beamline/sources/BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a> implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>7657971352128040279L</dd>
+</dl>
+<ul class="blockList">
+<li class="blockList">
+<h3>Serialized Fields</h3>
+<ul class="blockList">
+<li class="blockListLast">
+<h4>traces</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>[] traces</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="blockList"><a id="beamline.sources.XesLogSource">
+<!--   -->
+</a>
+<h3>Class <a href="beamline/sources/XesLogSource.html" title="class in beamline.sources">beamline.sources.XesLogSource</a> extends <a href="beamline/sources/BeamlineAbstractSource.html" title="class in beamline.sources">BeamlineAbstractSource</a> implements Serializable</h3>
+<dl class="nameValue">
+<dt>serialVersionUID:</dt>
+<dd>1095855454671335981L</dd>
+</dl>
+<ul class="blockList">
+<li class="blockList">
+<h3>Serialized Fields</h3>
+<ul class="blockList">
+<li class="blockList">
+<h4>events</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="beamline/events/BEvent.html" title="class in beamline.events">BEvent</a>&gt; events</pre>
+</li>
+<li class="blockListLast">
+<h4>fileName</h4>
+<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> fileName</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+</li>
 </ul>
 </div>
 </main>
diff --git a/type-search-index.js b/type-search-index.js
index fec1b0f..c21fd21 100644
--- a/type-search-index.js
+++ b/type-search-index.js
@@ -1 +1 @@
-typeSearchIndex = [{"l":"All Classes","url":"allclasses-index.html"},{"p":"beamline.sources","l":"CSVLogSource"},{"p":"beamline.mappers","l":"DirectlyFollowsRelation"},{"p":"beamline.exceptions","l":"EventException"},{"p":"beamline.utils","l":"EventUtils"},{"p":"beamline.filters","l":"ExcludeActivitiesFilter"},{"p":"beamline.filters","l":"ExcludeOnCaseAttributeEqualityFilter"},{"p":"beamline.filters","l":"ExcludeOnEventAttributeEqualityFilter"},{"p":"beamline.models.responses","l":"GraphvizResponse"},{"p":"beamline.models.algorithms","l":"HookEventProcessing"},{"p":"beamline.mappers","l":"InfiniteSizeDirectlyFollowsMapper"},{"p":"beamline.sources","l":"MQTTXesSource"},{"p":"beamline.models.responses","l":"Response"},{"p":"beamline.filters","l":"RetainActivitiesFilter"},{"p":"beamline.filters","l":"RetainOnCaseAttributeEqualityFilter"},{"p":"beamline.filters","l":"RetainOnEventAttributeEqualityFilter"},{"p":"beamline.sources","l":"Source"},{"p":"beamline.exceptions","l":"SourceException"},{"p":"beamline.models.algorithms","l":"StreamMiningAlgorithm"},{"p":"beamline.sources","l":"XesLogSource"},{"p":"beamline.sources","l":"XesSource"}]
\ No newline at end of file
+typeSearchIndex = [{"l":"All Classes","url":"allclasses-index.html"},{"p":"beamline.sources","l":"BeamlineAbstractSource"},{"p":"beamline.events","l":"BEvent"},{"p":"beamline.sources","l":"CSVLogSource"},{"p":"beamline.models.responses","l":"DirectlyFollowsRelation"},{"p":"beamline.exceptions","l":"EventException"},{"p":"beamline.filters","l":"ExcludeActivitiesFilter"},{"p":"beamline.filters","l":"ExcludeOnCaseAttributeEqualityFilter"},{"p":"beamline.filters","l":"ExcludeOnEventAttributeEqualityFilter"},{"p":"beamline.models.responses","l":"GraphvizResponse"},{"p":"beamline.models.algorithms","l":"InfiniteSizeDirectlyFollowsMapper"},{"p":"beamline.sources","l":"MQTTXesSource"},{"p":"beamline.sources","l":"CSVLogSource.ParserConfiguration"},{"p":"beamline.models.responses","l":"Response"},{"p":"beamline.filters","l":"RetainActivitiesFilter"},{"p":"beamline.filters","l":"RetainOnCaseAttributeEqualityFilter"},{"p":"beamline.filters","l":"RetainOnEventAttributeEqualityFilter"},{"p":"beamline.exceptions","l":"SourceException"},{"p":"beamline.models.algorithms","l":"StreamMiningAlgorithm"},{"p":"beamline.models.responses","l":"StringResponse"},{"p":"beamline.sources","l":"StringTestSource"},{"p":"beamline.sources","l":"XesLogSource"}]
\ No newline at end of file
diff --git a/type-search-index.zip b/type-search-index.zip
index e70032a6175b3300471a03dea0beaa341764e173..84794659326366f5fa0fda1be41529d0573cdd4a 100644
GIT binary patch
delta 416
zcmcb`{Dzq~z?+#xgn@&DgW=Td%89%h^;7Qp9X8-;jc0vY^@VYVcB->S$N?)wl_Rdx
zD(9-2Yj#?HQ@%HMORV}Su^UHHbLywn_D#LMR-sTeX;F8}lHvzP974ABc`99P(+fPG
zAga4V;iKh^u1o356}X*vCmK%;<qdPbzPrGtG-v6fH7DhQHn5zn&WPCmFKcef`R{7{
zraJX!cuu&A#bj=|?QEXmXt>tB?L^HE!wD%SzfL%4v!>2{bs}w9qPQ)~GY_7!_`N|P
zXBEPFyi-`rvo5J8@mo#gOG@j$+?Dtv&eJJw{>{ZRe>_oRJeapuN8I~PPx(g$4NY^g
z%D|E*bLTB~YvVEh;QTFQ+S84azu1=hPd>@LW5VHw_1PVAOG^`kAFH3xmM*Z^P*8Dk
z-<jlu&R;Rj(XZnFmFb?_{Qbea=#_PrFD9&)jE<jFm0v1Xesc2DuUnoUQu-d7yITE0
zlf3)>d-G3kw}1GSJHVTrW5)zD4?ji*hI1?o3<2JZOd<^M5D!6?6Juatn7n||gl!Td
I0|NsC0NkUo=Kufz

delta 391
zcmaFEe2bYkz?+#xgn@&DgW*7K;Y41I`pI|w4jb^a#<M=Hdc(M5^(i)wkONi%LXVVQ
z?>TqK*Xz-=za8c3r#V(=-|gRFYj?cp&r$ts$45>sF6oAz*$2DktvKU0+2v-KmAh%H
zYyCOa&hz)8rmVAKj1<s%5gj}8%yF}Y7PY&sR=(Q0ZTo~&PPGdCiw?)O$Yd$~O>}pd
z6u7#+j7Lmz%IqKyzN`Qnjx6f{!=S^zU$jokZ#%O8^NzL<U&T`r*(og6U!E!_mupQE
zQ%Y-|+?Dtt&eJJw-i^cl)g_ai{2O!bH|X9is#A!Oj69be)4T8MxdlsNq@Pp@PP!ho
z|EJ))-m(DQReuDIN}D>j@@TG0XwP`m+rH1|lYyLlTJzgK#`XI*{?0vnwy!~TRq)Kb
z;QvliQFGk3?3}f3?iRkJ>^sGRu?K?9&P}pt(&~5mcp;+i+C1g_%I1$>xdXh}IV9&V
k;<aI9V8~@*U<mMLWD;S3hi?d6Zt`kIYqkbP1_lNO0RHi)3jhEB

-- 
GitLab