diff --git a/EtsiServerGen/patches/WorldAnalysisYaml.patch b/EtsiServerGen/patches/WorldAnalysisYaml.patch
new file mode 100644
index 0000000000000000000000000000000000000000..e2010f79518823062bea371d1804195367122d7a
--- /dev/null
+++ b/EtsiServerGen/patches/WorldAnalysisYaml.patch
@@ -0,0 +1,16 @@
+diff --git a/API/worldanalysis/worldanalysisopenapi.yaml b/API/worldanalysis/worldanalysisopenapi.yaml
+index 436b258..e141fc1 100644
+--- a/API/worldanalysis/worldanalysisopenapi.yaml
++++ b/API/worldanalysis/worldanalysisopenapi.yaml
+@@ -140,7 +140,10 @@ paths:
+         description: Mode representing the context of the Relocalization information (AR device to WorldAnchor/Trackable or WorldAnchor/Trackable to AR device)
+         required: true
+         schema:
+-          $ref: '../common/commonopenapi.yaml#/components/schemas/Mode_WorldAnalysis'
++          description: Mode representing the context of the relocalization information (AR device to WorldAnchor/Trackable or WorldAnchor/Trackable to AR device)
++          type: string
++          enum: [TRACKABLES_TO_DEVICE, DEVICE_TO_TRACKABLES]
++          example: TRACKABLES_TO_DEVICE
+       responses: 
+         '200':
+           description: Successful operation.
diff --git a/EtsiServerGen/patches/applyPatches.sh b/EtsiServerGen/patches/applyPatches.sh
index f46e3ff201b11b759344f60e8a58ba70f7617dbc..6843d6c6611e77af4d2bd0880ec037e48d65c787 100755
--- a/EtsiServerGen/patches/applyPatches.sh
+++ b/EtsiServerGen/patches/applyPatches.sh
@@ -1,4 +1,5 @@
 #!/bin/bash
 patch -u ../api/DefaultApi.h -i fixHeaderDefaultApi.patch
 patch -u ../api/DefaultApi.cpp -i fixCppDefaultApi.patch
-patch -u ../api/PoseApi.cpp -i fixCppPoseApi.patch
\ No newline at end of file
+patch -u ../api/PoseApi.cpp -i fixCppPoseApi.patch
+#patch -u ../api/PoseApi.h -i fixHeaderPoseApi.patch
\ No newline at end of file
diff --git a/EtsiServerGen/patches/applyYamlPatch.sh b/EtsiServerGen/patches/applyYamlPatch.sh
new file mode 100755
index 0000000000000000000000000000000000000000..fe8412c6a13acf613ae822e74fca4d0e14ee6b37
--- /dev/null
+++ b/EtsiServerGen/patches/applyYamlPatch.sh
@@ -0,0 +1,2 @@
+#!/bin/bash
+cp ../arf005/API/worldanalysis/worldanalysisopenapi.yaml ../arf005/API/worldanalysis/worldanalysisopenapiPatched.yaml && patch -u ../arf005/API/worldanalysis/worldanalysisopenapiPatched.yaml -i ./patches/WorldAnalysisYaml.patch
\ No newline at end of file
diff --git a/EtsiServerGen/patches/fixCppPoseApi.patch b/EtsiServerGen/patches/fixCppPoseApi.patch
index 9c0693234bdf69fe8142afb92aed2a3d72532f24..b308545d08d5b96f89648f014286e45323fa73c5 100644
--- a/EtsiServerGen/patches/fixCppPoseApi.patch
+++ b/EtsiServerGen/patches/fixCppPoseApi.patch
@@ -1,11 +1,11 @@
---- PoseApi.cpp	2024-08-29 17:22:20.037445629 +0200
-+++ PoseApi_corrected.cpp	2024-08-29 16:56:57.582073400 +0200
-@@ -453,7 +453,7 @@
-     std::vector<GetPoses_uuid_parameter_inner> uuid;
+--- PoseApi.cpp	2024-09-17 15:11:41.869045502 +0200
++++ PoseApi_corrected.cpp	2024-09-17 15:12:57.909058480 +0200
+@@ -468,7 +468,7 @@
+     std::vector<UuidAndMode> uuid;
      std::vector<std::string> uuid_temp;
      boost::split(uuid_temp, uuid_raw, boost::is_any_of(","));
--    std::transform(uuid_temp.begin(), uuid_temp.end(), std::back_inserter(uuid), [](const auto& i){ GetPoses_uuid_parameter_inner ret; ret.fromString(i); return ret;});
-+    std::transform(uuid_temp.begin(), uuid_temp.end(), std::back_inserter(uuid), [](const auto& i){ GetPoses_uuid_parameter_inner ret; ret.setUuid(i); return ret;});
+-    std::transform(uuid_temp.begin(), uuid_temp.end(), std::back_inserter(uuid), [](const auto& i){ UuidAndMode ret; ret.fromString(i); return ret;});
++    std::transform(uuid_temp.begin(), uuid_temp.end(), std::back_inserter(uuid), [](const auto& i){ UuidAndMode ret; ret.fromJsonString(i); return ret;});
      // Getting the headers
      std::string token = request->get_header("token", "");
      std::string sessionID = request->get_header("sessionID", "");
diff --git a/arf005 b/arf005
index 11d0dac99c94ccf7efcda826bf5bfdb56fde30cb..0430c599248eecaf5a0cb7ea41ff88b87efaec4c 160000
--- a/arf005
+++ b/arf005
@@ -1 +1 @@
-Subproject commit 11d0dac99c94ccf7efcda826bf5bfdb56fde30cb
+Subproject commit 0430c599248eecaf5a0cb7ea41ff88b87efaec4c
diff --git a/package.json b/package.json
index bf8a8f5246b0cd7464aa35dc74b6c049ffe83fc4..005301cb66327ab6aaa21f3a455357ea0563ebe1 100644
--- a/package.json
+++ b/package.json
@@ -18,7 +18,7 @@
   "description": "ISG ARF World Analysis Cpp Server",
   "main": "index.js",
   "scripts": {
-    "generate": "cd EtsiServerGen && java -jar /usr/local/lib/node_modules/@openapitools/openapi-generator-cli/versions/7.5.0.jar generate -i ../arf005/API/worldanalysis/worldanalysisopenapi.yaml --skip-validate-spec --type-mappings=set=std::vector -g cpp-restbed-server -o . && cd patches && ./applyPatches.sh",
+    "generate": "cd EtsiServerGen && ./patches/applyYamlPatch.sh && java -jar /usr/local/lib/node_modules/@openapitools/openapi-generator-cli/versions/7.5.0.jar generate -i ../arf005/API/worldanalysis/worldanalysisopenapiPatched.yaml --skip-validate-spec --type-mappings=set=std::vector -g cpp-restbed-server -o . && cd patches && ./applyPatches.sh",
     "build": "cd EtsiServerGen && conan install . --build=missing && cd build && cmake .. --preset conan-release && cd Release && cmake --build . && sudo make install"    
   },
   "devDependencies": {