diff --git a/source/RobotAPI/components/DebugDrawer/DebugDrawerComponent.cpp b/source/RobotAPI/components/DebugDrawer/DebugDrawerComponent.cpp
index 270193c7952c20ae7a5b9c9c47e1ad3e739af027..1acd95e33c925f48b10780894770564fc6b0b9c1 100644
--- a/source/RobotAPI/components/DebugDrawer/DebugDrawerComponent.cpp
+++ b/source/RobotAPI/components/DebugDrawer/DebugDrawerComponent.cpp
@@ -2257,10 +2257,10 @@ namespace armarx
         enableLayerVisu(DEBUG_LAYER_NAME, visible);
     }
 
-    StringSequence DebugDrawerComponent::layerNames(const ::Ice::Current&)
+    Ice::StringSeq DebugDrawerComponent::layerNames(const ::Ice::Current&)
     {
         ScopedRecursiveLockPtr l = getScopedVisuLock();
-        StringSequence seq {};
+        Ice::StringSeq seq {};
 
         for (const auto & layer : layers)
         {
diff --git a/source/RobotAPI/components/DebugDrawer/DebugDrawerComponent.h b/source/RobotAPI/components/DebugDrawer/DebugDrawerComponent.h
index bef471367c53318c2a798132f4d156fd699b1ede..52706905dd117a5735e14cd5bd40a3c23d97d5ce 100644
--- a/source/RobotAPI/components/DebugDrawer/DebugDrawerComponent.h
+++ b/source/RobotAPI/components/DebugDrawer/DebugDrawerComponent.h
@@ -245,7 +245,7 @@ namespace armarx
         virtual void enableLayerVisu(const std::string& layerName, bool visible, const ::Ice::Current& = ::Ice::Current());
         virtual void enableDebugLayerVisu(bool visible, const ::Ice::Current& = ::Ice::Current());
 
-        virtual ::armarx::StringSequence layerNames(const ::Ice::Current& = ::Ice::Current());
+        virtual ::Ice::StringSeq layerNames(const ::Ice::Current& = ::Ice::Current());
         virtual ::armarx::LayerInformationSequence layerInformation(const ::Ice::Current& = ::Ice::Current());
 
         virtual void disableAllLayers(const ::Ice::Current& = ::Ice::Current());
diff --git a/source/RobotAPI/components/units/KinematicUnit.cpp b/source/RobotAPI/components/units/KinematicUnit.cpp
index 0421e5448651e9d4e5b637dce8701acba9da1276..842a4ea8d3faf0eb18195561ed18461f43877ab5 100644
--- a/source/RobotAPI/components/units/KinematicUnit.cpp
+++ b/source/RobotAPI/components/units/KinematicUnit.cpp
@@ -47,12 +47,12 @@ void KinematicUnit::onInitComponent()
     robotNodeSetName = getProperty<std::string>("RobotNodeSetName").getValue();
 
     std::string project = getProperty<std::string>("RobotFileNameProject").getValue();
-    StringList includePaths;
+    Ice::StringSeq includePaths;
 
     if (!project.empty())
     {
         CMakePackageFinder finder(project);
-        StringList projectIncludePaths;
+        Ice::StringSeq projectIncludePaths;
         auto pathsString = finder.getDataDir();
         boost::split(projectIncludePaths,
                      pathsString,
@@ -119,12 +119,12 @@ void KinematicUnit::setJointVelocities(const NameValueMap& targetJointVelocities
 {
 }
 
-void KinematicUnit::requestKinematicUnit(const StringSequence& nodes, const Ice::Current& c)
+void KinematicUnit::requestKinematicUnit(const Ice::StringSeq& nodes, const Ice::Current& c)
 {
     SensorActorUnit::request(c);
 }
 
-void KinematicUnit::releaseKinematicUnit(const StringSequence& nodes, const Ice::Current& c)
+void KinematicUnit::releaseKinematicUnit(const Ice::StringSeq& nodes, const Ice::Current& c)
 {
     SensorActorUnit::release(c);
 }
diff --git a/source/RobotAPI/components/units/KinematicUnit.h b/source/RobotAPI/components/units/KinematicUnit.h
index b3ea7aa863679356d4e0e0717388db632da1df7b..4c5cf7ddd85d60bc0859bdae8480a1939deb2bab 100644
--- a/source/RobotAPI/components/units/KinematicUnit.h
+++ b/source/RobotAPI/components/units/KinematicUnit.h
@@ -120,8 +120,8 @@ namespace armarx
         virtual void onExitKinematicUnit() = 0;
 
         // proxy implementation
-        virtual void requestKinematicUnit(const StringSequence& nodes, const Ice::Current& c = ::Ice::Current());
-        virtual void releaseKinematicUnit(const StringSequence& nodes, const Ice::Current& c = ::Ice::Current());
+        virtual void requestKinematicUnit(const Ice::StringSeq& nodes, const Ice::Current& c = ::Ice::Current());
+        virtual void releaseKinematicUnit(const Ice::StringSeq& nodes, const Ice::Current& c = ::Ice::Current());
         virtual void switchControlMode(const NameControlModeMap& targetJointModes, const Ice::Current& c = ::Ice::Current());
         virtual void setJointAngles(const NameValueMap& targetJointAngles, const Ice::Current& c = ::Ice::Current());
         virtual void setJointVelocities(const NameValueMap& targetJointVelocities, const Ice::Current& c = ::Ice::Current());
diff --git a/source/RobotAPI/components/units/KinematicUnitObserver.cpp b/source/RobotAPI/components/units/KinematicUnitObserver.cpp
index 345e3efc6972d971113662620de3079d1a3910b4..f387672b1e5a0181463413093dcdb27720d6dda8 100644
--- a/source/RobotAPI/components/units/KinematicUnitObserver.cpp
+++ b/source/RobotAPI/components/units/KinematicUnitObserver.cpp
@@ -65,12 +65,12 @@ void KinematicUnitObserver::onConnectObserver()
     // the kinematic chain elements belonging to this unit are defined in a RobotNodeSet
     std::string robotFile = getProperty<std::string>("RobotFileName").getValue();
     std::string project = getProperty<std::string>("RobotFileNameProject").getValue();
-    StringList includePaths;
+    Ice::StringSeq includePaths;
 
     if (!project.empty())
     {
         CMakePackageFinder finder(project);
-        StringList projectIncludePaths;
+        Ice::StringSeq projectIncludePaths;
         auto pathsString = finder.getDataDir();
         boost::split(projectIncludePaths,
                      pathsString,
diff --git a/source/RobotAPI/components/units/KinematicUnitSimulation.cpp b/source/RobotAPI/components/units/KinematicUnitSimulation.cpp
index 978fedcf56a92dea71785161f663647355b87a9d..207b9572877467db7aaae5277af8333e1067fafb 100644
--- a/source/RobotAPI/components/units/KinematicUnitSimulation.cpp
+++ b/source/RobotAPI/components/units/KinematicUnitSimulation.cpp
@@ -422,7 +422,7 @@ bool mapEntryEqualsString(std::pair<std::string, KinematicUnitSimulationJointSta
     return (iter.first == compareString);
 }
 
-void KinematicUnitSimulation::requestJoints(const StringSequence& joints, const Ice::Current& c)
+void KinematicUnitSimulation::requestJoints(const Ice::StringSeq& joints, const Ice::Current& c)
 {
     // if one of the joints belongs to this unit, lock access to this unit for other components except for the requesting one
     KinematicUnitSimulationJointStates::const_iterator it = std::find_first_of(jointStates.begin(), jointStates.end(), joints.begin(), joints.end(), mapEntryEqualsString);
@@ -433,7 +433,7 @@ void KinematicUnitSimulation::requestJoints(const StringSequence& joints, const
     }
 }
 
-void KinematicUnitSimulation::releaseJoints(const StringSequence& joints, const Ice::Current& c)
+void KinematicUnitSimulation::releaseJoints(const Ice::StringSeq& joints, const Ice::Current& c)
 {
     // if one of the joints belongs to this unit, unlock access
     KinematicUnitSimulationJointStates::const_iterator it = std::find_first_of(jointStates.begin(), jointStates.end(), joints.begin(), joints.end(), mapEntryEqualsString);
diff --git a/source/RobotAPI/components/units/KinematicUnitSimulation.h b/source/RobotAPI/components/units/KinematicUnitSimulation.h
index 87cea5bde4109336bcaab519e72ac9be59854e6a..e720ada33a8068ff965a127ac98a4c6c40114e68 100644
--- a/source/RobotAPI/components/units/KinematicUnitSimulation.h
+++ b/source/RobotAPI/components/units/KinematicUnitSimulation.h
@@ -147,8 +147,8 @@ namespace armarx
         void simulationFunction();
 
         // proxy implementation
-        virtual void requestJoints(const StringSequence& joints, const Ice::Current& c = ::Ice::Current());
-        virtual void releaseJoints(const StringSequence& joints, const Ice::Current& c = ::Ice::Current());
+        virtual void requestJoints(const Ice::StringSeq& joints, const Ice::Current& c = ::Ice::Current());
+        virtual void releaseJoints(const Ice::StringSeq& joints, const Ice::Current& c = ::Ice::Current());
         virtual void switchControlMode(const NameControlModeMap& targetJointModes, const Ice::Current& c = ::Ice::Current());
         virtual void setJointAngles(const NameValueMap& targetJointAngles, const Ice::Current& c = ::Ice::Current());
         virtual void setJointVelocities(const NameValueMap& targetJointVelocities, const Ice::Current& c = ::Ice::Current());
diff --git a/source/RobotAPI/gui-plugins/KinematicUnitPlugin/KinematicUnitGuiPlugin.cpp b/source/RobotAPI/gui-plugins/KinematicUnitPlugin/KinematicUnitGuiPlugin.cpp
index e191ec3555aee91a649be74fe61d34f57aaae5ad..9dade3b58be4219499405025d8f65576cfad7555 100644
--- a/source/RobotAPI/gui-plugins/KinematicUnitPlugin/KinematicUnitGuiPlugin.cpp
+++ b/source/RobotAPI/gui-plugins/KinematicUnitPlugin/KinematicUnitGuiPlugin.cpp
@@ -15,9 +15,9 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  *
- * @package    
- * @author     
- * @date       
+ * @package
+ * @author
+ * @date
  * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
  *             GNU General Public License
  */
@@ -145,13 +145,13 @@ void KinematicUnitWidgetController::onConnectComponent()
     robot.reset();
 
     std::string rfile;
-    StringList includePaths;
+    Ice::StringSeq includePaths;
 
     // get robot filename
     try
     {
 
-        StringList packages = kinematicUnitInterfacePrx->getArmarXPackages();
+        Ice::StringSeq packages = kinematicUnitInterfacePrx->getArmarXPackages();
         packages.push_back(Application::GetProjectName());
         ARMARX_VERBOSE << "ArmarX packages " << packages;
 
@@ -163,7 +163,7 @@ void KinematicUnitWidgetController::onConnectComponent()
             }
 
             CMakePackageFinder project(projectName);
-            StringList projectIncludePaths;
+            Ice::StringSeq projectIncludePaths;
             auto pathsString = project.getDataDir();
             ARMARX_VERBOSE << "Data paths of ArmarX package " << projectName << ": " << pathsString;
             boost::split(projectIncludePaths,
diff --git a/source/RobotAPI/gui-plugins/RobotViewerPlugin/RobotViewerGuiPlugin.cpp b/source/RobotAPI/gui-plugins/RobotViewerPlugin/RobotViewerGuiPlugin.cpp
index 3bffe4d3b405b5b2a1e51c273d89f60fb7cbb8a9..3f8897170147c9eab3676ab40b3d3649e2c2201f 100644
--- a/source/RobotAPI/gui-plugins/RobotViewerPlugin/RobotViewerGuiPlugin.cpp
+++ b/source/RobotAPI/gui-plugins/RobotViewerPlugin/RobotViewerGuiPlugin.cpp
@@ -15,9 +15,9 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  *
- * @package    
- * @author     
- * @date       
+ * @package
+ * @author
+ * @date
  * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
  *             GNU General Public License
  */
@@ -143,17 +143,17 @@ void RobotViewerWidgetController::onConnectComponent()
     robot.reset();
 
     std::string rfile;
-    StringList includePaths;
+    Ice::StringSeq includePaths;
 
     // get robot filename
     try
     {
 
-        StringList packages = robotStateComponentPrx->getArmarXPackages();
+        Ice::StringSeq packages = robotStateComponentPrx->getArmarXPackages();
         packages.push_back(Application::GetProjectName());
         ARMARX_VERBOSE << "ArmarX packages " << packages;
 
-        for (const std::string& projectName : packages)
+        for (const std::string & projectName : packages)
         {
             if (projectName.empty())
             {
@@ -161,7 +161,7 @@ void RobotViewerWidgetController::onConnectComponent()
             }
 
             CMakePackageFinder project(projectName);
-            StringList projectIncludePaths;
+            Ice::StringSeq projectIncludePaths;
             auto pathsString = project.getDataDir();
             ARMARX_VERBOSE << "Data paths of ArmarX package " << projectName << ": " << pathsString;
             boost::split(projectIncludePaths,
diff --git a/source/RobotAPI/interface/components/ViewSelectionInterface.ice b/source/RobotAPI/interface/components/ViewSelectionInterface.ice
index 52c991bd72a26ba991ec4c8b2b036444eb8385fc..4d1c04ed4c36f79467051a4c7c1bda272a0bc99e 100755
--- a/source/RobotAPI/interface/components/ViewSelectionInterface.ice
+++ b/source/RobotAPI/interface/components/ViewSelectionInterface.ice
@@ -59,7 +59,7 @@ module armarx
     {
         string name;
 
-        FloatSequence map;
+        Ice::FloatSeq map;
 
         TimestampBase validUntil;
 
diff --git a/source/RobotAPI/interface/core/RobotState.ice b/source/RobotAPI/interface/core/RobotState.ice
index 936fd47c8e5bc433d50ee06bbcd90ee454485f4c..50e5560ab23786406f9b959165d6ff934535f8d9 100644
--- a/source/RobotAPI/interface/core/RobotState.ice
+++ b/source/RobotAPI/interface/core/RobotState.ice
@@ -202,7 +202,7 @@ module armarx
          */
         ["cpp:const"]
         idempotent
-        StringList getArmarXPackages();
+        Ice::StringSeq getArmarXPackages();
 
         /**
          * @return The name of the robot represented by this component. Same as
diff --git a/source/RobotAPI/interface/units/InertialMeasurementUnit.ice b/source/RobotAPI/interface/units/InertialMeasurementUnit.ice
index 7d0d16e85a59509a3b1fda19cbbdcf2441662996..08afce9d608bc2c8d29d5ae2e0fe69d059307b61 100644
--- a/source/RobotAPI/interface/units/InertialMeasurementUnit.ice
+++ b/source/RobotAPI/interface/units/InertialMeasurementUnit.ice
@@ -48,10 +48,10 @@ module armarx
 	* @param acceleration Acceleration of IMU sensor device.
 	**/
     struct IMUData {
-        FloatSequence orientationQuaternion;
-        FloatSequence magneticRotation;
-        FloatSequence gyroscopeRotation; 
-        FloatSequence acceleration;
+        Ice::FloatSeq orientationQuaternion;
+        Ice::FloatSeq magneticRotation;
+        Ice::FloatSeq gyroscopeRotation; 
+        Ice::FloatSeq acceleration;
     };
 	/**
 	* Implements an interface to an InertialMeasurementUnit.
diff --git a/source/RobotAPI/interface/units/KinematicUnitInterface.ice b/source/RobotAPI/interface/units/KinematicUnitInterface.ice
index 00951473e9efd01ac4cf4ffb85c71fef38f0f5aa..eb6acb2d500d5fe224ebc5d4af091bcb5d06f386 100644
--- a/source/RobotAPI/interface/units/KinematicUnitInterface.ice
+++ b/source/RobotAPI/interface/units/KinematicUnitInterface.ice
@@ -121,7 +121,7 @@ module armarx
 	**/
     exception KinematicUnitNotOwnedException extends ResourceNotOwnedException
     {
-        StringSequence nodes;
+        Ice::StringSeq nodes;
     };
 	/**
 	* [NameValueMap] defined. This data container is mostly used to assign values to e.g. joints which are identified by name.
@@ -147,11 +147,11 @@ module armarx
          * The request only affects the active access, sensor values can always be read.
          *
          */
-        void requestJoints(StringSequence joints) throws KinematicUnitUnavailable;
+        void requestJoints(Ice::StringSeq joints) throws KinematicUnitUnavailable;
         /**
          * After usage joints should be released so that another component can get access to these joints.
          */
-        void releaseJoints(StringSequence joints) throws KinematicUnitNotOwnedException;
+        void releaseJoints(Ice::StringSeq joints) throws KinematicUnitNotOwnedException;
         
         /**
          * 
@@ -190,7 +190,7 @@ module armarx
          */
         ["cpp:const"]
         idempotent
-        StringList getArmarXPackages();
+        Ice::StringSeq getArmarXPackages();
 
         /**
          * @return The name of the robot used by this component.
diff --git a/source/RobotAPI/interface/visualization/DebugDrawerInterface.ice b/source/RobotAPI/interface/visualization/DebugDrawerInterface.ice
index 7322f721a7092a2b2baff60646fdd9e864a06a35..2496633043ddffc00fc676880c3a3a6bfa420fb3 100644
--- a/source/RobotAPI/interface/visualization/DebugDrawerInterface.ice
+++ b/source/RobotAPI/interface/visualization/DebugDrawerInterface.ice
@@ -324,7 +324,7 @@ module armarx
          * \brief Returns the names of all layers.
          * \return The names of all layers.
          */
-        StringSequence layerNames();
+        Ice::StringSeq layerNames();
 
         /*!
          * \brief Returns information about each layer.
diff --git a/source/RobotAPI/libraries/core/remoterobot/RemoteRobot.cpp b/source/RobotAPI/libraries/core/remoterobot/RemoteRobot.cpp
index b210594bb797e7d6ca247426d8c0b7a2fe7bd689..26b6a7e48d5810600a22f876002c9341404f8a27 100644
--- a/source/RobotAPI/libraries/core/remoterobot/RemoteRobot.cpp
+++ b/source/RobotAPI/libraries/core/remoterobot/RemoteRobot.cpp
@@ -15,9 +15,9 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  *
- * @package    
- * @author     
- * @date       
+ * @package
+ * @author
+ * @date
  * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
  *             GNU General Public License
  */
@@ -382,7 +382,7 @@ namespace armarx
         }
         else
         {
-            StringList includePaths;
+            Ice::StringSeq includePaths;
             for (const std::string & projectName : packages)
             {
                 if (projectName.empty())
@@ -391,7 +391,7 @@ namespace armarx
                 }
 
                 CMakePackageFinder project(projectName);
-                StringList projectIncludePaths;
+                Ice::StringSeq projectIncludePaths;
                 auto pathsString = project.getDataDir();
                 ARMARX_DEBUG_S << "Data paths of ArmarX package " << projectName << ": " << pathsString;
                 boost::split(projectIncludePaths,