diff --git a/examples/UC3-museum-guide/high-level-models-full/README.md b/examples/UC3-museum-guide/high-level-models-full/README.md
new file mode 100644
index 0000000..b8e6d3a
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/README.md
@@ -0,0 +1,3 @@
+# Museum guide (high-level model)
+
+This folder contains all the elements specifying a UC3-inspired model in the high-level/ROS SCXML format.
diff --git a/examples/UC3-museum-guide/high-level-models-full/bt_plugins/ROS2Action.scxml b/examples/UC3-museum-guide/high-level-models-full/bt_plugins/ROS2Action.scxml
new file mode 100644
index 0000000..0fdc9a6
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/bt_plugins/ROS2Action.scxml
@@ -0,0 +1,60 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/bt_plugins/ROS2Condition.scxml b/examples/UC3-museum-guide/high-level-models-full/bt_plugins/ROS2Condition.scxml
new file mode 100644
index 0000000..31185b0
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/bt_plugins/ROS2Condition.scxml
@@ -0,0 +1,40 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/bt_policies/Policy.xml b/examples/UC3-museum-guide/high-level-models-full/bt_policies/Policy.xml
new file mode 100644
index 0000000..3b922a5
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/bt_policies/Policy.xml
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/components/AllowedToMoveComponent.scxml b/examples/UC3-museum-guide/high-level-models-full/components/AllowedToMoveComponent.scxml
new file mode 100644
index 0000000..a7ddf06
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/components/AllowedToMoveComponent.scxml
@@ -0,0 +1,44 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/components/BatteryComponent.scxml b/examples/UC3-museum-guide/high-level-models-full/components/BatteryComponent.scxml
new file mode 100644
index 0000000..d503225
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/components/BatteryComponent.scxml
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/components/BlackboardComponent.scxml b/examples/UC3-museum-guide/high-level-models-full/components/BlackboardComponent.scxml
new file mode 100644
index 0000000..582edf8
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/components/BlackboardComponent.scxml
@@ -0,0 +1,111 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/components/NarrateComponent.scxml b/examples/UC3-museum-guide/high-level-models-full/components/NarrateComponent.scxml
new file mode 100644
index 0000000..4da4b20
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/components/NarrateComponent.scxml
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/components/NavigationComponent.scxml b/examples/UC3-museum-guide/high-level-models-full/components/NavigationComponent.scxml
new file mode 100644
index 0000000..2b96afe
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/components/NavigationComponent.scxml
@@ -0,0 +1,142 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/components/NotifyUserComponent.scxml b/examples/UC3-museum-guide/high-level-models-full/components/NotifyUserComponent.scxml
new file mode 100644
index 0000000..ee659e3
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/components/NotifyUserComponent.scxml
@@ -0,0 +1,56 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/components/PeopleDetectorFilterComponent.scxml b/examples/UC3-museum-guide/high-level-models-full/components/PeopleDetectorFilterComponent.scxml
new file mode 100644
index 0000000..16db203
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/components/PeopleDetectorFilterComponent.scxml
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/components/SchedulerComponent.scxml b/examples/UC3-museum-guide/high-level-models-full/components/SchedulerComponent.scxml
new file mode 100644
index 0000000..a242796
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/components/SchedulerComponent.scxml
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/components/TimerCheckForPeopleComponent.scxml b/examples/UC3-museum-guide/high-level-models-full/components/TimerCheckForPeopleComponent.scxml
new file mode 100644
index 0000000..c441e8c
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/components/TimerCheckForPeopleComponent.scxml
@@ -0,0 +1,46 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/components/TimerComponent.scxml b/examples/UC3-museum-guide/high-level-models-full/components/TimerComponent.scxml
new file mode 100644
index 0000000..edc244e
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/components/TimerComponent.scxml
@@ -0,0 +1,54 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/components/TurnBackManagerComponent.scxml b/examples/UC3-museum-guide/high-level-models-full/components/TurnBackManagerComponent.scxml
new file mode 100644
index 0000000..0e5a3e2
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/components/TurnBackManagerComponent.scxml
@@ -0,0 +1,141 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/main.xml b/examples/UC3-museum-guide/high-level-models-full/main.xml
new file mode 100644
index 0000000..5d611bd
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/main.xml
@@ -0,0 +1,94 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/properties/properties.jani b/examples/UC3-museum-guide/high-level-models-full/properties/properties.jani
new file mode 100644
index 0000000..9ef1d89
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/properties/properties.jani
@@ -0,0 +1,137 @@
+{
+ "properties": [
+ {
+ "name": "tree_success",
+ "expression": {
+ "op": "filter",
+ "fun": "values",
+ "values": {
+ "op": "Pmin",
+ "exp": {
+ "op": "F",
+ "exp": {
+ "comment": "1: SUCCESS, 2: FAILURE, 3: RUNNING",
+ "op": "=",
+ "left": "bt_1000_response__status",
+ "right": 1
+ }
+ }
+ },
+ "states": {
+ "op": "initial"
+ }
+ }
+ },
+ {
+ "name": "battery_alarm_response_1",
+ "expression": {
+ "op": "filter",
+ "fun": "values",
+ "values": {
+ "op": "Pmin",
+ "exp": {
+ "op": "G",
+ "exp": {
+ "op": "⇒",
+ "left": "topic_NotifyUserComponent__alarm_msg__ros_fields__data",
+ "right": {
+ "op": "≤",
+ "left": "topic_BatteryComponent__battery_level_msg__ros_fields__data",
+ "right": 30
+ }
+ }
+ }
+ },
+ "states": {
+ "op": "initial"
+ }
+ }
+ },
+ {
+ "name": "battery_alarm_response_2",
+ "expression": {
+ "op": "filter",
+ "fun": "values",
+ "values": {
+ "op": "Pmin",
+ "exp": {
+ "op": "U",
+ "left": {
+ "op": "∨",
+ "left": {
+ "op": "¬",
+ "exp": "topic_BatteryComponent__battery_level_msg.valid"
+ },
+ "right": {
+ "op": "≥",
+ "left": "topic_BatteryComponent__battery_level_msg__ros_fields__data",
+ "right": 25
+ }
+ },
+ "right": {
+ "op": "∧",
+ "left": "topic_NotifyUserComponent__alarm_msg__ros_fields__data",
+ "right": "topic_NotifyUserComponent__alarm_msg.valid"
+ }
+ }
+ },
+ "states": {
+ "op": "initial"
+ }
+ }
+ },
+ {
+ "name": "no_alarm_if_battery_high",
+ "expression": {
+ "op": "filter",
+ "fun": "values",
+ "values": {
+ "op": "Pmin",
+ "exp": {
+ "op": "G",
+ "exp": {
+ "op": "⇒",
+ "left": {
+ "op": ">",
+ "left": "topic_BatteryComponent__battery_level_msg__ros_fields__data",
+ "right": 30
+ },
+ "right": {
+ "op": "¬",
+ "exp": "topic_NotifyUserComponent__alarm_msg__ros_fields__data"
+ }
+ }
+ }
+ },
+ "states": {
+ "op": "initial"
+ }
+ }
+ },
+ {
+ "name": "battery_recurrence",
+ "expression": {
+ "op": "filter",
+ "fun": "values",
+ "values": {
+ "op": "Pmin",
+ "exp": {
+ "op": "G",
+ "exp": {
+ "op": "⇒",
+ "left": {
+ "op": ">",
+ "left": "topic_clock_msg__ros_fields__sec",
+ "right": 50
+ },
+ "right": "topic_BatteryComponent__battery_level_msg.valid"
+ }
+ }
+ },
+ "states": {
+ "op": "initial"
+ }
+ }
+ }
+ ]
+}
diff --git a/examples/UC3-museum-guide/high-level-models-full/properties/properties.xml b/examples/UC3-museum-guide/high-level-models-full/properties/properties.xml
new file mode 100644
index 0000000..1c004ca
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/properties/properties.xml
@@ -0,0 +1,42 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/allowed_to_move_interfaces/CMakeLists.txt b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/allowed_to_move_interfaces/CMakeLists.txt
new file mode 100644
index 0000000..6691291
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/allowed_to_move_interfaces/CMakeLists.txt
@@ -0,0 +1,33 @@
+cmake_minimum_required(VERSION 3.8)
+project(allowed_to_move_interfaces)
+
+if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ add_compile_options(-Wall -Wextra -Wpedantic)
+endif()
+
+# find dependencies
+find_package(ament_cmake REQUIRED)
+# uncomment the following section in order to fill in
+# further dependencies manually.
+# find_package( REQUIRED)
+find_package(rosidl_default_generators REQUIRED)
+rosidl_generate_interfaces(allowed_to_move_interfaces
+"srv/IsAllowedToMove.srv"
+"srv/SetAllowedToMove.srv"
+LIBRARY_NAME allowed_to_move_interfaces
+)
+
+
+if(BUILD_TESTING)
+ find_package(ament_lint_auto REQUIRED)
+ # the following line skips the linter which checks for copyrights
+ # comment the line when a copyright and license is added to all source files
+ set(ament_cmake_copyright_FOUND TRUE)
+ # the following line skips cpplint (only works in a git repo)
+ # comment the line when this package is in a git repo and when
+ # a copyright and license is added to all source files
+ set(ament_cmake_cpplint_FOUND TRUE)
+ ament_lint_auto_find_test_dependencies()
+endif()
+
+ament_package()
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/allowed_to_move_interfaces/package.xml b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/allowed_to_move_interfaces/package.xml
new file mode 100644
index 0000000..9f9cf17
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/allowed_to_move_interfaces/package.xml
@@ -0,0 +1,21 @@
+
+
+
+ allowed_to_move_interfaces
+ 0.0.0
+ TODO: Package description
+ ste
+ TODO: License declaration
+
+ ament_cmake
+ ament_lint_auto
+ ament_lint_common
+ rosidl_interface_packages
+ rosidl_default_runtime
+
+ rosidl_default_generators
+
+
+ ament_cmake
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/allowed_to_move_interfaces/srv/IsAllowedToMove.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/allowed_to_move_interfaces/srv/IsAllowedToMove.srv
new file mode 100644
index 0000000..7113036
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/allowed_to_move_interfaces/srv/IsAllowedToMove.srv
@@ -0,0 +1,4 @@
+---
+bool is_ok
+bool is_allowed_to_move
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/allowed_to_move_interfaces/srv/SetAllowedToMove.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/allowed_to_move_interfaces/srv/SetAllowedToMove.srv
new file mode 100644
index 0000000..0bcd5bc
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/allowed_to_move_interfaces/srv/SetAllowedToMove.srv
@@ -0,0 +1,4 @@
+bool is_allowed_to_move
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/CMakeLists.txt b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/CMakeLists.txt
new file mode 100644
index 0000000..2c38856
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/CMakeLists.txt
@@ -0,0 +1,41 @@
+cmake_minimum_required(VERSION 3.8)
+project(blackboard_interfaces)
+
+if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ add_compile_options(-Wall -Wextra -Wpedantic)
+endif()
+
+# find dependencies
+find_package(ament_cmake REQUIRED)
+find_package(sensor_msgs REQUIRED)
+# uncomment the following section in order to fill in
+# further dependencies manually.
+# find_package( REQUIRED)
+find_package(rosidl_default_generators REQUIRED)
+rosidl_generate_interfaces(blackboard_interfaces
+"srv/GetDoubleBlackboard.srv"
+"srv/SetDoubleBlackboard.srv"
+"srv/SetIntBlackboard.srv"
+"srv/GetIntBlackboard.srv"
+"srv/GetStringBlackboard.srv"
+"srv/SetStringBlackboard.srv"
+"srv/SetAllIntsWithPrefixBlackboard.srv"
+DEPENDENCIES sensor_msgs
+LIBRARY_NAME blackboard_interfaces
+)
+ament_export_dependencies( sensor_msgs)
+
+
+if(BUILD_TESTING)
+ find_package(ament_lint_auto REQUIRED)
+ # the following line skips the linter which checks for copyrights
+ # comment the line when a copyright and license is added to all source files
+ set(ament_cmake_copyright_FOUND TRUE)
+ # the following line skips cpplint (only works in a git repo)
+ # comment the line when this package is in a git repo and when
+ # a copyright and license is added to all source files
+ set(ament_cmake_cpplint_FOUND TRUE)
+ ament_lint_auto_find_test_dependencies()
+endif()
+
+ament_package()
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/package.xml b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/package.xml
new file mode 100644
index 0000000..fc739d0
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/package.xml
@@ -0,0 +1,22 @@
+
+
+
+ blackboard_interfaces
+ 0.0.0
+ TODO: Package description
+ ste
+ TODO: License declaration
+ sensor_msgs
+
+ ament_cmake
+ ament_lint_auto
+ ament_lint_common
+ rosidl_interface_packages
+ rosidl_default_runtime
+
+ rosidl_default_generators
+
+
+ ament_cmake
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/GetDoubleBlackboard.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/GetDoubleBlackboard.srv
new file mode 100644
index 0000000..0f5f32c
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/GetDoubleBlackboard.srv
@@ -0,0 +1,5 @@
+string field_name
+---
+float64 value
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/GetIntBlackboard.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/GetIntBlackboard.srv
new file mode 100644
index 0000000..1a14bcc
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/GetIntBlackboard.srv
@@ -0,0 +1,5 @@
+string field_name
+---
+int32 value
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/GetStringBlackboard.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/GetStringBlackboard.srv
new file mode 100644
index 0000000..b37d7bd
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/GetStringBlackboard.srv
@@ -0,0 +1,5 @@
+string field_name
+---
+string value
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/SetAllIntsWithPrefixBlackboard.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/SetAllIntsWithPrefixBlackboard.srv
new file mode 100644
index 0000000..5c22c45
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/SetAllIntsWithPrefixBlackboard.srv
@@ -0,0 +1,5 @@
+string field_name
+int32 value
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/SetDoubleBlackboard.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/SetDoubleBlackboard.srv
new file mode 100644
index 0000000..e089996
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/SetDoubleBlackboard.srv
@@ -0,0 +1,5 @@
+string field_name
+float64 value
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/SetIntBlackboard.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/SetIntBlackboard.srv
new file mode 100644
index 0000000..5c22c45
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/SetIntBlackboard.srv
@@ -0,0 +1,5 @@
+string field_name
+int32 value
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/SetStringBlackboard.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/SetStringBlackboard.srv
new file mode 100644
index 0000000..7f154f6
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/blackboard_interfaces/srv/SetStringBlackboard.srv
@@ -0,0 +1,5 @@
+string field_name
+string value
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/CMakeLists.txt b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/CMakeLists.txt
new file mode 100644
index 0000000..d5c0407
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/CMakeLists.txt
@@ -0,0 +1,37 @@
+cmake_minimum_required(VERSION 3.8)
+project(bt_interfaces_dummy)
+if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ add_compile_options(-Wall -Wextra -Wpedantic)
+endif()
+
+# find dependencies
+find_package(ament_cmake REQUIRED)
+# uncomment the following section in order to fill in
+# further dependencies manually.
+# find_package( REQUIRED)
+
+find_package(rosidl_default_generators REQUIRED)
+
+rosidl_generate_interfaces(${PROJECT_NAME}
+"srv/TickAction.srv"
+"msg/ActionResponse.msg"
+"msg/ConditionResponse.msg"
+"srv/HaltAction.srv"
+"srv/TickCondition.srv"
+"srv/ReloadTree.srv"
+LIBRARY_NAME ${PROJECT_NAME}
+)
+
+if(BUILD_TESTING)
+ find_package(ament_lint_auto REQUIRED)
+ # the following line skips the linter which checks for copyrights
+ # comment the line when a copyright and license is added to all source files
+ set(ament_cmake_copyright_FOUND TRUE)
+ # the following line skips cpplint (only works in a git repo)
+ # comment the line when this package is in a git repo and when
+ # a copyright and license is added to all source files
+ set(ament_cmake_cpplint_FOUND TRUE)
+ ament_lint_auto_find_test_dependencies()
+endif()
+
+ament_package()
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/msg/ActionResponse.msg b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/msg/ActionResponse.msg
new file mode 100644
index 0000000..02a2b3e
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/msg/ActionResponse.msg
@@ -0,0 +1,4 @@
+int8 SKILL_SUCCESS=0
+int8 SKILL_FAILURE=1
+int8 SKILL_RUNNING=2
+int8 status
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/msg/ConditionResponse.msg b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/msg/ConditionResponse.msg
new file mode 100644
index 0000000..23894c4
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/msg/ConditionResponse.msg
@@ -0,0 +1,3 @@
+int8 SKILL_SUCCESS=0
+int8 SKILL_FAILURE=1
+int8 status
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/package.xml b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/package.xml
new file mode 100644
index 0000000..8ceb38e
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/package.xml
@@ -0,0 +1,21 @@
+
+
+
+ bt_interfaces_dummy
+ 0.0.0
+ TODO: Package description
+ ste
+ TODO: License declaration
+
+ ament_cmake
+ ament_lint_auto
+ ament_lint_common
+ rosidl_interface_packages
+ rosidl_default_runtime
+
+ rosidl_default_generators
+
+
+ ament_cmake
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/srv/HaltAction.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/srv/HaltAction.srv
new file mode 100644
index 0000000..22724de
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/srv/HaltAction.srv
@@ -0,0 +1,2 @@
+---
+bool is_ok
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/srv/ReloadTree.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/srv/ReloadTree.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/srv/ReloadTree.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/srv/TickAction.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/srv/TickAction.srv
new file mode 100644
index 0000000..dc9eed6
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/srv/TickAction.srv
@@ -0,0 +1,3 @@
+---
+int8 status
+bool is_ok
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/srv/TickCondition.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/srv/TickCondition.srv
new file mode 100644
index 0000000..dc9eed6
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/bt_interfaces_dummy/srv/TickCondition.srv
@@ -0,0 +1,3 @@
+---
+int8 status
+bool is_ok
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/hardware_monitor_interfaces/CMakeLists.txt b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/hardware_monitor_interfaces/CMakeLists.txt
new file mode 100644
index 0000000..7dd4b57
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/hardware_monitor_interfaces/CMakeLists.txt
@@ -0,0 +1,15 @@
+cmake_minimum_required(VERSION 3.8)
+project(hardware_monitor_interfaces)
+
+if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ add_compile_options(-Wall -Wextra -Wpedantic)
+endif()
+
+find_package(ament_cmake REQUIRED)
+find_package(rosidl_default_generators REQUIRED)
+
+rosidl_generate_interfaces(${PROJECT_NAME}
+ "srv/HasFaults.srv"
+)
+
+ament_package()
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/hardware_monitor_interfaces/package.xml b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/hardware_monitor_interfaces/package.xml
new file mode 100644
index 0000000..74ec5f8
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/hardware_monitor_interfaces/package.xml
@@ -0,0 +1,18 @@
+
+
+
+ hardware_monitor_interfaces
+ 0.0.0
+ Dummy interfaces for hardware monitor component
+ user
+ TODO
+
+ ament_cmake
+ rosidl_default_generators
+ rosidl_default_runtime
+ rosidl_interface_packages
+
+
+ ament_cmake
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/hardware_monitor_interfaces/srv/HasFaults.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/hardware_monitor_interfaces/srv/HasFaults.srv
new file mode 100644
index 0000000..a568c85
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/hardware_monitor_interfaces/srv/HasFaults.srv
@@ -0,0 +1,5 @@
+# Request
+---
+# Response
+bool has_fault # true se c'è almeno un fault hardware
+bool is_ok # true se la chiamata è andata a buon fine
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/log_interfaces/CMakeLists.txt b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/log_interfaces/CMakeLists.txt
new file mode 100644
index 0000000..246895c
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/log_interfaces/CMakeLists.txt
@@ -0,0 +1,37 @@
+cmake_minimum_required(VERSION 3.8)
+set (CMAKE_CXX_STANDARD 17)
+set(CMAKE_CXX_STANDARD_REQUIRED ON)
+
+
+project(log_interfaces)
+
+if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ add_compile_options(-Wall -Wextra -Wpedantic)
+endif()
+
+# find dependencies
+find_package(ament_cmake REQUIRED)
+# uncomment the following section in order to fill in
+# further dependencies manually.
+# find_package( REQUIRED)
+find_package(rosidl_default_generators REQUIRED)
+rosidl_generate_interfaces(log_interfaces
+"srv/AddToLog.srv"
+LIBRARY_NAME log_interfaces
+)
+ament_export_dependencies( sensor_msgs)
+
+
+if(BUILD_TESTING)
+ find_package(ament_lint_auto REQUIRED)
+ # the following line skips the linter which checks for copyrights
+ # comment the line when a copyright and license is added to all source files
+ set(ament_cmake_copyright_FOUND TRUE)
+ # the following line skips cpplint (only works in a git repo)
+ # comment the line when this package is in a git repo and when
+ # a copyright and license is added to all source files
+ set(ament_cmake_cpplint_FOUND TRUE)
+ ament_lint_auto_find_test_dependencies()
+endif()
+
+ament_package()
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/log_interfaces/package.xml b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/log_interfaces/package.xml
new file mode 100644
index 0000000..6235a89
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/log_interfaces/package.xml
@@ -0,0 +1,21 @@
+
+
+
+ log_interfaces
+ 0.0.0
+ TODO: Package description
+ sf
+ TODO: License declaration
+
+ ament_cmake
+ ament_lint_auto
+ ament_lint_common
+ rosidl_interface_packages
+ rosidl_default_runtime
+
+ rosidl_default_generators
+
+
+ ament_cmake
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/log_interfaces/srv/AddToLog.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/log_interfaces/srv/AddToLog.srv
new file mode 100644
index 0000000..cb5c5ec
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/log_interfaces/srv/AddToLog.srv
@@ -0,0 +1,4 @@
+string text
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/manage_service_interfaces/CMakeLists.txt b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/manage_service_interfaces/CMakeLists.txt
new file mode 100644
index 0000000..0d6dea5
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/manage_service_interfaces/CMakeLists.txt
@@ -0,0 +1,33 @@
+cmake_minimum_required(VERSION 3.8)
+project(manage_service_interfaces)
+
+if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ add_compile_options(-Wall -Wextra -Wpedantic)
+endif()
+
+# find dependencies
+find_package(ament_cmake REQUIRED)
+# uncomment the following section in order to fill in
+# further dependencies manually.
+# find_package( REQUIRED)
+find_package(rosidl_default_generators REQUIRED)
+rosidl_generate_interfaces(manage_service_interfaces
+"srv/StartService.srv"
+"srv/StopService.srv"
+LIBRARY_NAME manage_service_interfaces
+)
+
+
+if(BUILD_TESTING)
+ find_package(ament_lint_auto REQUIRED)
+ # the following line skips the linter which checks for copyrights
+ # comment the line when a copyright and license is added to all source files
+ set(ament_cmake_copyright_FOUND TRUE)
+ # the following line skips cpplint (only works in a git repo)
+ # comment the line when this package is in a git repo and when
+ # a copyright and license is added to all source files
+ set(ament_cmake_cpplint_FOUND TRUE)
+ ament_lint_auto_find_test_dependencies()
+endif()
+
+ament_package()
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/manage_service_interfaces/package.xml b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/manage_service_interfaces/package.xml
new file mode 100644
index 0000000..7bd9a56
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/manage_service_interfaces/package.xml
@@ -0,0 +1,21 @@
+
+
+
+ manage_service_interfaces
+ 0.0.0
+ TODO: Package description
+ ste
+ TODO: License declaration
+
+ ament_cmake
+ ament_lint_auto
+ ament_lint_common
+ rosidl_interface_packages
+ rosidl_default_runtime
+
+ rosidl_default_generators
+
+
+ ament_cmake
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/manage_service_interfaces/srv/StartService.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/manage_service_interfaces/srv/StartService.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/manage_service_interfaces/srv/StartService.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/manage_service_interfaces/srv/StopService.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/manage_service_interfaces/srv/StopService.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/manage_service_interfaces/srv/StopService.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/narrate_interfaces/CMakeLists.txt b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/narrate_interfaces/CMakeLists.txt
new file mode 100644
index 0000000..ccfa83d
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/narrate_interfaces/CMakeLists.txt
@@ -0,0 +1,34 @@
+cmake_minimum_required(VERSION 3.8)
+project(narrate_interfaces)
+
+if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ add_compile_options(-Wall -Wextra -Wpedantic)
+endif()
+
+# find dependencies
+find_package(ament_cmake REQUIRED)
+# uncomment the following section in order to fill in
+# further dependencies manually.
+# find_package( REQUIRED)
+find_package(rosidl_default_generators REQUIRED)
+rosidl_generate_interfaces(narrate_interfaces
+"srv/Narrate.srv"
+"srv/IsDone.srv"
+"srv/Stop.srv"
+LIBRARY_NAME narrate_interfaces
+)
+
+
+if(BUILD_TESTING)
+ find_package(ament_lint_auto REQUIRED)
+ # the following line skips the linter which checks for copyrights
+ # comment the line when a copyright and license is added to all source files
+ set(ament_cmake_copyright_FOUND TRUE)
+ # the following line skips cpplint (only works in a git repo)
+ # comment the line when this package is in a git repo and when
+ # a copyright and license is added to all source files
+ set(ament_cmake_cpplint_FOUND TRUE)
+ ament_lint_auto_find_test_dependencies()
+endif()
+
+ament_package()
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/narrate_interfaces/package.xml b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/narrate_interfaces/package.xml
new file mode 100644
index 0000000..c43884a
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/narrate_interfaces/package.xml
@@ -0,0 +1,21 @@
+
+
+
+ narrate_interfaces
+ 0.0.0
+ TODO: Package description
+ ste
+ TODO: License declaration
+
+ ament_cmake
+ ament_lint_auto
+ ament_lint_common
+ rosidl_interface_packages
+ rosidl_default_runtime
+
+ rosidl_default_generators
+
+
+ ament_cmake
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/narrate_interfaces/srv/IsDone.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/narrate_interfaces/srv/IsDone.srv
new file mode 100644
index 0000000..9990326
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/narrate_interfaces/srv/IsDone.srv
@@ -0,0 +1,4 @@
+---
+bool is_done
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/narrate_interfaces/srv/Narrate.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/narrate_interfaces/srv/Narrate.srv
new file mode 100644
index 0000000..26d340f
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/narrate_interfaces/srv/Narrate.srv
@@ -0,0 +1,4 @@
+string command
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/narrate_interfaces/srv/Stop.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/narrate_interfaces/srv/Stop.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/narrate_interfaces/srv/Stop.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/CMakeLists.txt b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/CMakeLists.txt
new file mode 100644
index 0000000..6772a99
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/CMakeLists.txt
@@ -0,0 +1,44 @@
+cmake_minimum_required(VERSION 3.8)
+set (CMAKE_CXX_STANDARD 17)
+set(CMAKE_CXX_STANDARD_REQUIRED ON)
+
+project(navigation_interfaces)
+
+if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ add_compile_options(-Wall -Wextra -Wpedantic)
+endif()
+
+# find dependencies
+find_package(ament_cmake REQUIRED)
+find_package(sensor_msgs REQUIRED)
+# uncomment the following section in order to fill in
+# further dependencies manually.
+# find_package( REQUIRED)
+find_package(rosidl_default_generators REQUIRED)
+rosidl_generate_interfaces(navigation_interfaces
+"srv/GoToPoiByName.srv"
+"srv/GetNavigationStatus.srv"
+"msg/NavigationStatus.msg"
+"srv/StopNavigation.srv"
+"srv/CheckNearToPoi.srv"
+"srv/TurnBack.srv"
+"action/GoToPoi.action"
+DEPENDENCIES sensor_msgs
+LIBRARY_NAME navigation_interfaces
+)
+ament_export_dependencies( sensor_msgs)
+
+
+if(BUILD_TESTING)
+ find_package(ament_lint_auto REQUIRED)
+ # the following line skips the linter which checks for copyrights
+ # comment the line when a copyright and license is added to all source files
+ set(ament_cmake_copyright_FOUND TRUE)
+ # the following line skips cpplint (only works in a git repo)
+ # comment the line when this package is in a git repo and when
+ # a copyright and license is added to all source files
+ set(ament_cmake_cpplint_FOUND TRUE)
+ ament_lint_auto_find_test_dependencies()
+endif()
+
+ament_package()
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/action/GoToPoi.action b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/action/GoToPoi.action
new file mode 100644
index 0000000..94e328c
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/action/GoToPoi.action
@@ -0,0 +1,6 @@
+string poi_name
+---
+bool is_ok
+string error_msg
+---
+NavigationStatus status
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/msg/NavigationStatus.msg b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/msg/NavigationStatus.msg
new file mode 100644
index 0000000..ad885ab
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/msg/NavigationStatus.msg
@@ -0,0 +1,11 @@
+int8 NAVIGATION_STATUS_IDLE=0
+int8 NAVIGATION_STATUS_PREPARING_BEFORE_MOVE=1
+int8 NAVIGATION_STATUS_MOVING=2
+int8 NAVIGATION_STATUS_WAITING_OBSTACLE=3
+int8 NAVIGATION_STATUS_GOAL_REACHED=4
+int8 NAVIGATION_STATUS_ABORTED=5
+int8 NAVIGATION_STATUS_FAILING=6
+int8 NAVIGATION_STATUS_PAUSED=7
+int8 NAVIGATION_STATUS_THINKING=8
+int8 NAVIGATION_STATUS_ERROR=9
+int8 status
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/package.xml b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/package.xml
new file mode 100644
index 0000000..7a4f3a4
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/package.xml
@@ -0,0 +1,22 @@
+
+
+
+ navigation_interfaces
+ 0.0.0
+ TODO: Package description
+ ste
+ TODO: License declaration
+ sensor_msgs
+
+ ament_cmake
+ ament_lint_auto
+ ament_lint_common
+ rosidl_interface_packages
+ rosidl_default_runtime
+
+ rosidl_default_generators
+
+
+ ament_cmake
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/srv/CheckNearToPoi.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/srv/CheckNearToPoi.srv
new file mode 100644
index 0000000..ac1dcd6
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/srv/CheckNearToPoi.srv
@@ -0,0 +1,7 @@
+string poi_name
+float64 distance
+float64 angle
+---
+bool is_near
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/srv/GetNavigationStatus.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/srv/GetNavigationStatus.srv
new file mode 100644
index 0000000..5a51af4
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/srv/GetNavigationStatus.srv
@@ -0,0 +1,5 @@
+---
+NavigationStatus status
+string current_goal
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/srv/GoToPoiByName.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/srv/GoToPoiByName.srv
new file mode 100644
index 0000000..e142bb4
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/srv/GoToPoiByName.srv
@@ -0,0 +1,4 @@
+string poi_name
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/srv/StopNavigation.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/srv/StopNavigation.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/srv/StopNavigation.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/srv/TurnBack.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/srv/TurnBack.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/navigation_interfaces/srv/TurnBack.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/notify_user_interfaces/CMakeLists.txt b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/notify_user_interfaces/CMakeLists.txt
new file mode 100644
index 0000000..c613381
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/notify_user_interfaces/CMakeLists.txt
@@ -0,0 +1,34 @@
+cmake_minimum_required(VERSION 3.8)
+project(notify_user_interfaces)
+
+if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ add_compile_options(-Wall -Wextra -Wpedantic)
+endif()
+
+# find dependencies
+find_package(ament_cmake REQUIRED)
+# uncomment the following section in order to fill in
+# further dependencies manually.
+# find_package( REQUIRED)
+find_package(rosidl_default_generators REQUIRED)
+rosidl_generate_interfaces(notify_user_interfaces
+"srv/NotifyUserCharged.srv"
+"srv/StartAlarm.srv"
+"srv/StopAlarm.srv"
+LIBRARY_NAME notify_user_interfaces
+)
+
+
+if(BUILD_TESTING)
+ find_package(ament_lint_auto REQUIRED)
+ # the following line skips the linter which checks for copyrights
+ # comment the line when a copyright and license is added to all source files
+ set(ament_cmake_copyright_FOUND TRUE)
+ # the following line skips cpplint (only works in a git repo)
+ # comment the line when this package is in a git repo and when
+ # a copyright and license is added to all source files
+ set(ament_cmake_cpplint_FOUND TRUE)
+ ament_lint_auto_find_test_dependencies()
+endif()
+
+ament_package()
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/notify_user_interfaces/package.xml b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/notify_user_interfaces/package.xml
new file mode 100644
index 0000000..17585a3
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/notify_user_interfaces/package.xml
@@ -0,0 +1,21 @@
+
+
+
+ notify_user_interfaces
+ 0.0.0
+ TODO: Package description
+ ste
+ TODO: License declaration
+
+ ament_cmake
+ ament_lint_auto
+ ament_lint_common
+ rosidl_interface_packages
+ rosidl_default_runtime
+
+ rosidl_default_generators
+
+
+ ament_cmake
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/notify_user_interfaces/srv/NotifyUserCharged.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/notify_user_interfaces/srv/NotifyUserCharged.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/notify_user_interfaces/srv/NotifyUserCharged.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/notify_user_interfaces/srv/StartAlarm.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/notify_user_interfaces/srv/StartAlarm.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/notify_user_interfaces/srv/StartAlarm.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/notify_user_interfaces/srv/StopAlarm.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/notify_user_interfaces/srv/StopAlarm.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/notify_user_interfaces/srv/StopAlarm.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/other_interfaces/CMakeLists.txt b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/other_interfaces/CMakeLists.txt
new file mode 100644
index 0000000..7855522
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/other_interfaces/CMakeLists.txt
@@ -0,0 +1,35 @@
+cmake_minimum_required(VERSION 3.8)
+project(other_interfaces)
+
+if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ add_compile_options(-Wall -Wextra -Wpedantic)
+endif()
+
+# find dependencies
+find_package(ament_cmake REQUIRED)
+find_package(sensor_msgs REQUIRED)
+# uncomment the following section in order to fill in
+# further dependencies manually.
+# find_package( REQUIRED)
+find_package(rosidl_default_generators REQUIRED)
+rosidl_generate_interfaces(other_interfaces
+"srv/RpcWithoutParameters.srv"
+DEPENDENCIES sensor_msgs
+LIBRARY_NAME other_interfaces
+)
+ament_export_dependencies( sensor_msgs)
+
+
+if(BUILD_TESTING)
+ find_package(ament_lint_auto REQUIRED)
+ # the following line skips the linter which checks for copyrights
+ # comment the line when a copyright and license is added to all source files
+ set(ament_cmake_copyright_FOUND TRUE)
+ # the following line skips cpplint (only works in a git repo)
+ # comment the line when this package is in a git repo and when
+ # a copyright and license is added to all source files
+ set(ament_cmake_cpplint_FOUND TRUE)
+ ament_lint_auto_find_test_dependencies()
+endif()
+
+ament_package()
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/other_interfaces/package.xml b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/other_interfaces/package.xml
new file mode 100644
index 0000000..410cd73
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/other_interfaces/package.xml
@@ -0,0 +1,22 @@
+
+
+
+ other_interfaces
+ 0.0.0
+ TODO: Package description
+ ste
+ TODO: License declaration
+ sensor_msgs
+
+ ament_cmake
+ ament_lint_auto
+ ament_lint_common
+ rosidl_interface_packages
+ rosidl_default_runtime
+
+ rosidl_default_generators
+
+
+ ament_cmake
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/other_interfaces/srv/RpcWithoutParameters.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/other_interfaces/srv/RpcWithoutParameters.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/other_interfaces/srv/RpcWithoutParameters.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/people_detector_filter_interfaces/CMakeLists.txt b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/people_detector_filter_interfaces/CMakeLists.txt
new file mode 100644
index 0000000..149849b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/people_detector_filter_interfaces/CMakeLists.txt
@@ -0,0 +1,41 @@
+cmake_minimum_required(VERSION 3.8)
+set (CMAKE_CXX_STANDARD 17)
+set(CMAKE_CXX_STANDARD_REQUIRED ON)
+
+
+project(people_detector_filter_interfaces)
+
+if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ add_compile_options(-Wall -Wextra -Wpedantic)
+endif()
+
+# find dependencies
+find_package(ament_cmake REQUIRED)
+find_package(sensor_msgs REQUIRED)
+# uncomment the following section in order to fill in
+# further dependencies manually.
+# find_package( REQUIRED)
+find_package(rosidl_default_generators REQUIRED)
+rosidl_generate_interfaces(people_detector_filter_interfaces
+"msg/FilterStatus.msg"
+"srv/SetFilterTimeout.srv"
+"srv/GetFilterTimeout.srv"
+DEPENDENCIES sensor_msgs
+LIBRARY_NAME people_detector_filter_interfaces
+)
+ament_export_dependencies( sensor_msgs)
+
+
+if(BUILD_TESTING)
+ find_package(ament_lint_auto REQUIRED)
+ # the following line skips the linter which checks for copyrights
+ # comment the line when a copyright and license is added to all source files
+ set(ament_cmake_copyright_FOUND TRUE)
+ # the following line skips cpplint (only works in a git repo)
+ # comment the line when this package is in a git repo and when
+ # a copyright and license is added to all source files
+ set(ament_cmake_cpplint_FOUND TRUE)
+ ament_lint_auto_find_test_dependencies()
+endif()
+
+ament_package()
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/people_detector_filter_interfaces/msg/FilterStatus.msg b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/people_detector_filter_interfaces/msg/FilterStatus.msg
new file mode 100644
index 0000000..b3fcfe9
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/people_detector_filter_interfaces/msg/FilterStatus.msg
@@ -0,0 +1,7 @@
+int8 FILTER_STATUS_NEUTRAL_TURN_BACK_REACHED=-2
+int8 FILTER_STATUS_NEUTRAL_TURNING_BACK=-1
+int8 FILTER_STATUS_FALSE=0
+int8 FILTER_STATUS_TRUE=1
+int8 FILTER_STATUS_NEUTRAL_TURNING=2
+int8 FILTER_STATUS_NEUTRAL_NAV_STATUS=3
+int8 status
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/people_detector_filter_interfaces/package.xml b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/people_detector_filter_interfaces/package.xml
new file mode 100644
index 0000000..3522330
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/people_detector_filter_interfaces/package.xml
@@ -0,0 +1,22 @@
+
+
+
+ people_detector_filter_interfaces
+ 0.0.0
+ TODO: Package description
+ sf
+ TODO: License declaration
+ sensor_msgs
+
+ ament_cmake
+ ament_lint_auto
+ ament_lint_common
+ rosidl_interface_packages
+ rosidl_default_runtime
+
+ rosidl_default_generators
+
+
+ ament_cmake
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/people_detector_filter_interfaces/srv/GetFilterTimeout.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/people_detector_filter_interfaces/srv/GetFilterTimeout.srv
new file mode 100644
index 0000000..28a896c
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/people_detector_filter_interfaces/srv/GetFilterTimeout.srv
@@ -0,0 +1,4 @@
+---
+int32 timeout
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/people_detector_filter_interfaces/srv/SetFilterTimeout.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/people_detector_filter_interfaces/srv/SetFilterTimeout.srv
new file mode 100644
index 0000000..db83d91
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/people_detector_filter_interfaces/srv/SetFilterTimeout.srv
@@ -0,0 +1,4 @@
+int32 timeout
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/CMakeLists.txt b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/CMakeLists.txt
new file mode 100644
index 0000000..1b389b6
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/CMakeLists.txt
@@ -0,0 +1,50 @@
+cmake_minimum_required(VERSION 3.8)
+set (CMAKE_CXX_STANDARD 17)
+set(CMAKE_CXX_STANDARD_REQUIRED ON)
+
+
+project(scheduler_interfaces)
+
+if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ add_compile_options(-Wall -Wextra -Wpedantic)
+endif()
+
+# find dependencies
+find_package(ament_cmake REQUIRED)
+find_package(sensor_msgs REQUIRED)
+# uncomment the following section in order to fill in
+# further dependencies manually.
+# find_package( REQUIRED)
+find_package(rosidl_default_generators REQUIRED)
+rosidl_generate_interfaces(scheduler_interfaces
+"srv/UpdatePoi.srv"
+"srv/GetCurrentPoi.srv"
+"srv/Reset.srv"
+"srv/EndTour.srv"
+"srv/UpdateAction.srv"
+"srv/GetCurrentAction.srv"
+"srv/SetLanguage.srv"
+"srv/GetCurrentLanguage.srv"
+"srv/SetCommand.srv"
+"srv/GetCurrentCommand.srv"
+"srv/GetAvailableCommands.srv"
+"srv/SetPoi.srv"
+DEPENDENCIES sensor_msgs
+LIBRARY_NAME scheduler_interfaces
+)
+ament_export_dependencies( sensor_msgs)
+
+
+if(BUILD_TESTING)
+ find_package(ament_lint_auto REQUIRED)
+ # the following line skips the linter which checks for copyrights
+ # comment the line when a copyright and license is added to all source files
+ set(ament_cmake_copyright_FOUND TRUE)
+ # the following line skips cpplint (only works in a git repo)
+ # comment the line when this package is in a git repo and when
+ # a copyright and license is added to all source files
+ set(ament_cmake_cpplint_FOUND TRUE)
+ ament_lint_auto_find_test_dependencies()
+endif()
+
+ament_package()
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/package.xml b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/package.xml
new file mode 100644
index 0000000..0b40830
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/package.xml
@@ -0,0 +1,22 @@
+
+
+
+ scheduler_interfaces
+ 0.0.0
+ TODO: Package description
+ ste
+ TODO: License declaration
+ sensor_msgs
+
+ ament_cmake
+ ament_lint_auto
+ ament_lint_common
+ rosidl_interface_packages
+ rosidl_default_runtime
+
+ rosidl_default_generators
+
+
+ ament_cmake
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/EndTour.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/EndTour.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/EndTour.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/GetAvailableCommands.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/GetAvailableCommands.srv
new file mode 100644
index 0000000..6d87e44
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/GetAvailableCommands.srv
@@ -0,0 +1,4 @@
+---
+string[] commands
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/GetCurrentAction.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/GetCurrentAction.srv
new file mode 100644
index 0000000..6a230ea
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/GetCurrentAction.srv
@@ -0,0 +1,6 @@
+---
+bool is_blocking
+string param
+string type
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/GetCurrentCommand.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/GetCurrentCommand.srv
new file mode 100644
index 0000000..0107b4e
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/GetCurrentCommand.srv
@@ -0,0 +1,4 @@
+---
+string command
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/GetCurrentLanguage.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/GetCurrentLanguage.srv
new file mode 100644
index 0000000..47ebd4e
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/GetCurrentLanguage.srv
@@ -0,0 +1,4 @@
+---
+string language
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/GetCurrentPoi.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/GetCurrentPoi.srv
new file mode 100644
index 0000000..9d35fed
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/GetCurrentPoi.srv
@@ -0,0 +1,5 @@
+---
+string poi_name
+int32 poi_number
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/Reset.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/Reset.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/Reset.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/SetCommand.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/SetCommand.srv
new file mode 100644
index 0000000..26d340f
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/SetCommand.srv
@@ -0,0 +1,4 @@
+string command
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/SetLanguage.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/SetLanguage.srv
new file mode 100644
index 0000000..5fa3e86
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/SetLanguage.srv
@@ -0,0 +1,4 @@
+string language
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/SetPoi.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/SetPoi.srv
new file mode 100644
index 0000000..863c610
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/SetPoi.srv
@@ -0,0 +1,4 @@
+int32 poi_number
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/UpdateAction.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/UpdateAction.srv
new file mode 100644
index 0000000..2001f4b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/UpdateAction.srv
@@ -0,0 +1,4 @@
+---
+bool done_with_poi
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/UpdatePoi.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/UpdatePoi.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/scheduler_interfaces/srv/UpdatePoi.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/time_interfaces/CMakeLists.txt b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/time_interfaces/CMakeLists.txt
new file mode 100644
index 0000000..ec6971f
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/time_interfaces/CMakeLists.txt
@@ -0,0 +1,40 @@
+cmake_minimum_required(VERSION 3.8)
+set (CMAKE_CXX_STANDARD 17)
+set(CMAKE_CXX_STANDARD_REQUIRED ON)
+
+
+project(time_interfaces)
+
+if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ add_compile_options(-Wall -Wextra -Wpedantic)
+endif()
+
+# find dependencies
+find_package(ament_cmake REQUIRED)
+# uncomment the following section in order to fill in
+# further dependencies manually.
+# find_package( REQUIRED)
+find_package(rosidl_default_generators REQUIRED)
+rosidl_generate_interfaces(time_interfaces
+"srv/StartTourTimer.srv"
+"srv/StopTourTimer.srv"
+"srv/ReloadConfigFile.srv"
+"srv/IsMuseumClosing.srv"
+LIBRARY_NAME time_interfaces
+)
+ament_export_dependencies( sensor_msgs)
+
+
+if(BUILD_TESTING)
+ find_package(ament_lint_auto REQUIRED)
+ # the following line skips the linter which checks for copyrights
+ # comment the line when a copyright and license is added to all source files
+ set(ament_cmake_copyright_FOUND TRUE)
+ # the following line skips cpplint (only works in a git repo)
+ # comment the line when this package is in a git repo and when
+ # a copyright and license is added to all source files
+ set(ament_cmake_cpplint_FOUND TRUE)
+ ament_lint_auto_find_test_dependencies()
+endif()
+
+ament_package()
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/time_interfaces/package.xml b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/time_interfaces/package.xml
new file mode 100644
index 0000000..9dd3371
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/time_interfaces/package.xml
@@ -0,0 +1,21 @@
+
+
+
+ time_interfaces
+ 0.0.0
+ TODO: Package description
+ sf
+ TODO: License declaration
+
+ ament_cmake
+ ament_lint_auto
+ ament_lint_common
+ rosidl_interface_packages
+ rosidl_default_runtime
+
+ rosidl_default_generators
+
+
+ ament_cmake
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/time_interfaces/srv/IsMuseumClosing.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/time_interfaces/srv/IsMuseumClosing.srv
new file mode 100644
index 0000000..efbce5b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/time_interfaces/srv/IsMuseumClosing.srv
@@ -0,0 +1,4 @@
+---
+bool is_closing
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/time_interfaces/srv/ReloadConfigFile.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/time_interfaces/srv/ReloadConfigFile.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/time_interfaces/srv/ReloadConfigFile.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/time_interfaces/srv/StartTourTimer.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/time_interfaces/srv/StartTourTimer.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/time_interfaces/srv/StartTourTimer.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/time_interfaces/srv/StopTourTimer.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/time_interfaces/srv/StopTourTimer.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/time_interfaces/srv/StopTourTimer.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/timer_check_for_people_interfaces/CMakeLists.txt b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/timer_check_for_people_interfaces/CMakeLists.txt
new file mode 100644
index 0000000..ba031de
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/timer_check_for_people_interfaces/CMakeLists.txt
@@ -0,0 +1,33 @@
+cmake_minimum_required(VERSION 3.8)
+project(timer_check_for_people_interfaces)
+
+if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ add_compile_options(-Wall -Wextra -Wpedantic)
+endif()
+
+# find dependencies
+find_package(ament_cmake REQUIRED)
+# uncomment the following section in order to fill in
+# further dependencies manually.
+# find_package( REQUIRED)
+find_package(rosidl_default_generators REQUIRED)
+rosidl_generate_interfaces(timer_check_for_people_interfaces
+"srv/StartTimer.srv"
+"srv/IsTimerActive.srv"
+LIBRARY_NAME timer_check_for_people_interfaces
+)
+
+
+if(BUILD_TESTING)
+ find_package(ament_lint_auto REQUIRED)
+ # the following line skips the linter which checks for copyrights
+ # comment the line when a copyright and license is added to all source files
+ set(ament_cmake_copyright_FOUND TRUE)
+ # the following line skips cpplint (only works in a git repo)
+ # comment the line when this package is in a git repo and when
+ # a copyright and license is added to all source files
+ set(ament_cmake_cpplint_FOUND TRUE)
+ ament_lint_auto_find_test_dependencies()
+endif()
+
+ament_package()
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/timer_check_for_people_interfaces/package.xml b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/timer_check_for_people_interfaces/package.xml
new file mode 100644
index 0000000..74e7904
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/timer_check_for_people_interfaces/package.xml
@@ -0,0 +1,21 @@
+
+
+
+ timer_check_for_people_interfaces
+ 0.0.0
+ TODO: Package description
+ ste
+ TODO: License declaration
+
+ ament_cmake
+ ament_lint_auto
+ ament_lint_common
+ rosidl_interface_packages
+ rosidl_default_runtime
+
+ rosidl_default_generators
+
+
+ ament_cmake
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/timer_check_for_people_interfaces/srv/IsTimerActive.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/timer_check_for_people_interfaces/srv/IsTimerActive.srv
new file mode 100644
index 0000000..ec93b89
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/timer_check_for_people_interfaces/srv/IsTimerActive.srv
@@ -0,0 +1,4 @@
+---
+bool is_ok
+bool is_active
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/timer_check_for_people_interfaces/srv/StartTimer.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/timer_check_for_people_interfaces/srv/StartTimer.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/timer_check_for_people_interfaces/srv/StartTimer.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/CMakeLists.txt b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/CMakeLists.txt
new file mode 100644
index 0000000..bd44352
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/CMakeLists.txt
@@ -0,0 +1,47 @@
+cmake_minimum_required(VERSION 3.8)
+set (CMAKE_CXX_STANDARD 17)
+set(CMAKE_CXX_STANDARD_REQUIRED ON)
+
+
+project(turn_back_manager_interfaces)
+
+if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ add_compile_options(-Wall -Wextra -Wpedantic)
+endif()
+
+# find dependencies
+find_package(ament_cmake REQUIRED)
+find_package(sensor_msgs REQUIRED)
+# uncomment the following section in order to fill in
+# further dependencies manually.
+# find_package( REQUIRED)
+find_package(rosidl_default_generators REQUIRED)
+rosidl_generate_interfaces(turn_back_manager_interfaces
+"srv/ResetCounters.srv"
+"srv/SetMaxTurnBacks.srv"
+"srv/GetMaxTurnBacks.srv"
+"srv/SetMaxConsecutiveFalses.srv"
+"srv/GetMaxConsecutiveFalses.srv"
+"srv/IncreaseTurnBacksCounter.srv"
+"srv/GetTurnBacksCounter.srv"
+"srv/IsAllowedToTurnBack.srv"
+"srv/IsAllowedToContinue.srv"
+DEPENDENCIES sensor_msgs
+LIBRARY_NAME turn_back_manager_interfaces
+)
+ament_export_dependencies( sensor_msgs)
+
+
+if(BUILD_TESTING)
+ find_package(ament_lint_auto REQUIRED)
+ # the following line skips the linter which checks for copyrights
+ # comment the line when a copyright and license is added to all source files
+ set(ament_cmake_copyright_FOUND TRUE)
+ # the following line skips cpplint (only works in a git repo)
+ # comment the line when this package is in a git repo and when
+ # a copyright and license is added to all source files
+ set(ament_cmake_cpplint_FOUND TRUE)
+ ament_lint_auto_find_test_dependencies()
+endif()
+
+ament_package()
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/package.xml b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/package.xml
new file mode 100644
index 0000000..8a7f063
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/package.xml
@@ -0,0 +1,22 @@
+
+
+
+ turn_back_manager_interfaces
+ 0.0.0
+ TODO: Package description
+ sf
+ TODO: License declaration
+ sensor_msgs
+
+ ament_cmake
+ ament_lint_auto
+ ament_lint_common
+ rosidl_interface_packages
+ rosidl_default_runtime
+
+ rosidl_default_generators
+
+
+ ament_cmake
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/GetMaxConsecutiveFalses.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/GetMaxConsecutiveFalses.srv
new file mode 100644
index 0000000..1c21bc9
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/GetMaxConsecutiveFalses.srv
@@ -0,0 +1,4 @@
+---
+int32 max
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/GetMaxTurnBacks.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/GetMaxTurnBacks.srv
new file mode 100644
index 0000000..1c21bc9
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/GetMaxTurnBacks.srv
@@ -0,0 +1,4 @@
+---
+int32 max
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/GetTurnBacksCounter.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/GetTurnBacksCounter.srv
new file mode 100644
index 0000000..392911a
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/GetTurnBacksCounter.srv
@@ -0,0 +1,4 @@
+---
+int32 counter
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/IncreaseTurnBacksCounter.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/IncreaseTurnBacksCounter.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/IncreaseTurnBacksCounter.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/IsAllowedToContinue.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/IsAllowedToContinue.srv
new file mode 100644
index 0000000..df39ec3
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/IsAllowedToContinue.srv
@@ -0,0 +1,5 @@
+---
+bool is_allowed
+bool is_ok
+bool result
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/IsAllowedToTurnBack.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/IsAllowedToTurnBack.srv
new file mode 100644
index 0000000..98a9cf9
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/IsAllowedToTurnBack.srv
@@ -0,0 +1,4 @@
+---
+bool is_allowed
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/ResetCounters.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/ResetCounters.srv
new file mode 100644
index 0000000..6b2fc3b
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/ResetCounters.srv
@@ -0,0 +1,3 @@
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/SetMaxConsecutiveFalses.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/SetMaxConsecutiveFalses.srv
new file mode 100644
index 0000000..1215278
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/SetMaxConsecutiveFalses.srv
@@ -0,0 +1,4 @@
+int32 max
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/SetMaxTurnBacks.srv b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/SetMaxTurnBacks.srv
new file mode 100644
index 0000000..1215278
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/ros_interfaces/turn_back_manager_interfaces/srv/SetMaxTurnBacks.srv
@@ -0,0 +1,4 @@
+int32 max
+---
+bool is_ok
+string error_msg
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/AlarmBatteryLowSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/AlarmBatteryLowSkill.scxml
new file mode 100644
index 0000000..50a275c
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/AlarmBatteryLowSkill.scxml
@@ -0,0 +1,65 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/ArePeoplePresentSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/ArePeoplePresentSkill.scxml
new file mode 100644
index 0000000..2e09659
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/ArePeoplePresentSkill.scxml
@@ -0,0 +1,52 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/BatteryChargingSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/BatteryChargingSkill.scxml
new file mode 100644
index 0000000..d876a32
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/BatteryChargingSkill.scxml
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/BatteryLevelSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/BatteryLevelSkill.scxml
new file mode 100644
index 0000000..64a6363
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/BatteryLevelSkill.scxml
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/CheckIfFirstPoiSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/CheckIfFirstPoiSkill.scxml
new file mode 100644
index 0000000..83d17b8
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/CheckIfFirstPoiSkill.scxml
@@ -0,0 +1,53 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/CheckIfStartSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/CheckIfStartSkill.scxml
new file mode 100644
index 0000000..9c5b121
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/CheckIfStartSkill.scxml
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/CheckNetworkSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/CheckNetworkSkill.scxml
new file mode 100644
index 0000000..9fcc854
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/CheckNetworkSkill.scxml
@@ -0,0 +1,47 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/DialogSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/DialogSkill.scxml
new file mode 100644
index 0000000..6adc697
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/DialogSkill.scxml
@@ -0,0 +1,122 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/GoToChargingStationSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/GoToChargingStationSkill.scxml
new file mode 100644
index 0000000..b698a71
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/GoToChargingStationSkill.scxml
@@ -0,0 +1,103 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/GoToPoiActionSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/GoToPoiActionSkill.scxml
new file mode 100644
index 0000000..a6b6a40
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/GoToPoiActionSkill.scxml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/HardwareFaultSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/HardwareFaultSkill.scxml
new file mode 100644
index 0000000..f4b626d
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/HardwareFaultSkill.scxml
@@ -0,0 +1,94 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/IsAllowedToMoveSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/IsAllowedToMoveSkill.scxml
new file mode 100644
index 0000000..ef2d6df
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/IsAllowedToMoveSkill.scxml
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/IsAllowedToTurnBackSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/IsAllowedToTurnBackSkill.scxml
new file mode 100644
index 0000000..4ec4b8c
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/IsAllowedToTurnBackSkill.scxml
@@ -0,0 +1,97 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/IsAtChargingStationSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/IsAtChargingStationSkill.scxml
new file mode 100644
index 0000000..fbc6c57
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/IsAtChargingStationSkill.scxml
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/IsAtCurrentPoiSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/IsAtCurrentPoiSkill.scxml
new file mode 100644
index 0000000..780e42a
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/IsAtCurrentPoiSkill.scxml
@@ -0,0 +1,108 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/IsCheckingForPeopleSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/IsCheckingForPeopleSkill.scxml
new file mode 100644
index 0000000..cda9c7f
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/IsCheckingForPeopleSkill.scxml
@@ -0,0 +1,73 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/IsMaximumDurationSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/IsMaximumDurationSkill.scxml
new file mode 100644
index 0000000..876dba5
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/IsMaximumDurationSkill.scxml
@@ -0,0 +1,73 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/IsMuseumClosingSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/IsMuseumClosingSkill.scxml
new file mode 100644
index 0000000..37bbda5
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/IsMuseumClosingSkill.scxml
@@ -0,0 +1,51 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/IsPoiDone1Skill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/IsPoiDone1Skill.scxml
new file mode 100644
index 0000000..f8d78d1
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/IsPoiDone1Skill.scxml
@@ -0,0 +1,68 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/IsPoiDone2Skill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/IsPoiDone2Skill.scxml
new file mode 100644
index 0000000..02857df
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/IsPoiDone2Skill.scxml
@@ -0,0 +1,68 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/IsTimerDoneSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/IsTimerDoneSkill.scxml
new file mode 100644
index 0000000..02857df
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/IsTimerDoneSkill.scxml
@@ -0,0 +1,68 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/IsWarningDurationSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/IsWarningDurationSkill.scxml
new file mode 100644
index 0000000..e196a20
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/IsWarningDurationSkill.scxml
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/NarratePoiSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/NarratePoiSkill.scxml
new file mode 100644
index 0000000..618cc03
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/NarratePoiSkill.scxml
@@ -0,0 +1,107 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/NetworkStatusChangedSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/NetworkStatusChangedSkill.scxml
new file mode 100644
index 0000000..2335edb
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/NetworkStatusChangedSkill.scxml
@@ -0,0 +1,43 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/NetworkUpSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/NetworkUpSkill.scxml
new file mode 100644
index 0000000..d809ee5
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/NetworkUpSkill.scxml
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/NotifyChargedSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/NotifyChargedSkill.scxml
new file mode 100644
index 0000000..2782cff
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/NotifyChargedSkill.scxml
@@ -0,0 +1,70 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/PeopleLeftSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/PeopleLeftSkill.scxml
new file mode 100644
index 0000000..4fec6eb
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/PeopleLeftSkill.scxml
@@ -0,0 +1,100 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/ResetCountersSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/ResetCountersSkill.scxml
new file mode 100644
index 0000000..28e6caf
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/ResetCountersSkill.scxml
@@ -0,0 +1,70 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/ResetSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/ResetSkill.scxml
new file mode 100644
index 0000000..24d009a
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/ResetSkill.scxml
@@ -0,0 +1,111 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/ResetTourAndFlagsSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/ResetTourAndFlagsSkill.scxml
new file mode 100644
index 0000000..0b0e101
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/ResetTourAndFlagsSkill.scxml
@@ -0,0 +1,72 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/ResetTourSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/ResetTourSkill.scxml
new file mode 100644
index 0000000..0dc0a10
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/ResetTourSkill.scxml
@@ -0,0 +1,57 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/RunTimerSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/RunTimerSkill.scxml
new file mode 100644
index 0000000..a5a2bee
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/RunTimerSkill.scxml
@@ -0,0 +1,73 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/SayByeSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/SayByeSkill.scxml
new file mode 100644
index 0000000..3d2eff1
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/SayByeSkill.scxml
@@ -0,0 +1,141 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/SayDurationExceededSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/SayDurationExceededSkill.scxml
new file mode 100644
index 0000000..bbd3a58
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/SayDurationExceededSkill.scxml
@@ -0,0 +1,191 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/SayFollowMeSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/SayFollowMeSkill.scxml
new file mode 100644
index 0000000..97daf74
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/SayFollowMeSkill.scxml
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/SayPeopleLeftSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/SayPeopleLeftSkill.scxml
new file mode 100644
index 0000000..53b33fd
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/SayPeopleLeftSkill.scxml
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/SayWarningDurationSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/SayWarningDurationSkill.scxml
new file mode 100644
index 0000000..4a2c55a
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/SayWarningDurationSkill.scxml
@@ -0,0 +1,146 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/SayWhileNavigatingSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/SayWhileNavigatingSkill.scxml
new file mode 100644
index 0000000..7f31120
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/SayWhileNavigatingSkill.scxml
@@ -0,0 +1,119 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/SetCurrentPoiDoneSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/SetCurrentPoiDoneSkill.scxml
new file mode 100644
index 0000000..02b4a7e
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/SetCurrentPoiDoneSkill.scxml
@@ -0,0 +1,80 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/SetNavigationPositionSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/SetNavigationPositionSkill.scxml
new file mode 100644
index 0000000..4156c28
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/SetNavigationPositionSkill.scxml
@@ -0,0 +1,119 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/SetNotTurningSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/SetNotTurningSkill.scxml
new file mode 100644
index 0000000..bf5b9fd
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/SetNotTurningSkill.scxml
@@ -0,0 +1,52 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/SetPoi1Skill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/SetPoi1Skill.scxml
new file mode 100644
index 0000000..cbe6512
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/SetPoi1Skill.scxml
@@ -0,0 +1,54 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/SetPoi2Skill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/SetPoi2Skill.scxml
new file mode 100644
index 0000000..0ac4b82
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/SetPoi2Skill.scxml
@@ -0,0 +1,59 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/SetTurnedSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/SetTurnedSkill.scxml
new file mode 100644
index 0000000..34d93d4
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/SetTurnedSkill.scxml
@@ -0,0 +1,89 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/SetTurningSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/SetTurningSkill.scxml
new file mode 100644
index 0000000..648a3be
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/SetTurningSkill.scxml
@@ -0,0 +1,63 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/StartServiceSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/StartServiceSkill.scxml
new file mode 100644
index 0000000..8f630f8
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/StartServiceSkill.scxml
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/StartTourTimerSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/StartTourTimerSkill.scxml
new file mode 100644
index 0000000..530a136
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/StartTourTimerSkill.scxml
@@ -0,0 +1,92 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/StopAndTurnBackSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/StopAndTurnBackSkill.scxml
new file mode 100644
index 0000000..7b8cb79
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/StopAndTurnBackSkill.scxml
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/StopServiceSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/StopServiceSkill.scxml
new file mode 100644
index 0000000..d721bdc
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/StopServiceSkill.scxml
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/StopTourTimerSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/StopTourTimerSkill.scxml
new file mode 100644
index 0000000..4cb83a4
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/StopTourTimerSkill.scxml
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/UpdatePoiSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/UpdatePoiSkill.scxml
new file mode 100644
index 0000000..03d21b1
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/UpdatePoiSkill.scxml
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/VisitorsFollowingRobotSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/VisitorsFollowingRobotSkill.scxml
new file mode 100644
index 0000000..d762a11
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/VisitorsFollowingRobotSkill.scxml
@@ -0,0 +1,55 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/WaitSkill.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/WaitSkill.scxml
new file mode 100644
index 0000000..9cd236d
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/WaitSkill.scxml
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/UC3-museum-guide/high-level-models-full/skills/high_level_template.scxml b/examples/UC3-museum-guide/high-level-models-full/skills/high_level_template.scxml
new file mode 100644
index 0000000..f6e1f34
--- /dev/null
+++ b/examples/UC3-museum-guide/high-level-models-full/skills/high_level_template.scxml
@@ -0,0 +1,70 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+model2code \
+ --input_filename /home/user1/UC3/model-high-level/Skills/AlarmBatteryLowSkill.scxml \
+ --model_filename /home/user1/UC3/parser-and-code-generator/specifications/full-model.xml \
+ --interface_filename /home/user1/UC3/parser-and-code-generator/specifications/interfaces.xml \
+ --template_path /home/user1/UC3/template_skill \
+ --output_path /home/user1/UC3/src/skills/alarm_battery_low_skill/ \
+ --verbose_mode
+