diff --git a/alib2data/src/PrimitiveRegistrator.cpp b/alib2data/src/PrimitiveRegistrator.cpp
index 96a2f793151b45a6228ea400d25773fb1693afbc..e8e75be7989c117607e97e78943a144cb2490952 100644
--- a/alib2data/src/PrimitiveRegistrator.cpp
+++ b/alib2data/src/PrimitiveRegistrator.cpp
@@ -7,8 +7,7 @@
 
 #include <registry/ContainerRegistry.hpp>
 
-#include <registry/XmlComposerRegistry.hpp>
-#include <registry/XmlParserRegistry.hpp>
+#include <registration/XmlRegistration.hpp>
 #include <registry/XmlContainerParserRegistry.hpp>
 
 #include <primitive/xml/UnsignedLong.h>
@@ -31,12 +30,13 @@ public:
 	PrimitiveRegistrator ( ) {
 		abstraction::ContainerRegistry::registerSet < common::ranked_symbol < object::Object, unsigned > > ( "RankedSymbol" );
 		abstraction::XmlContainerParserRegistry::registerSet < common::ranked_symbol < object::Object, unsigned > > ( "RankedSymbol" );
-		abstraction::XmlComposerRegistry::registerXmlComposer < ext::set < common::ranked_symbol < object::Object, unsigned > > > ( );
-		abstraction::XmlComposerRegistry::registerXmlComposer < common::ranked_symbol < object::Object, unsigned > > ( );
-		abstraction::XmlComposerRegistry::registerXmlComposer < ext::vector < ext::map < std::pair < object::Object, object::Object >, ext::map < object::Object, object::Object > > > > ( );
-		abstraction::XmlComposerRegistry::registerXmlComposer < ext::vector < ext::vector < ext::set < object::Object > > > > ( );
-		abstraction::XmlComposerRegistry::registerXmlComposer < ext::map < common::ranked_symbol < object::Object, unsigned >, size_t > > ( );
-		abstraction::XmlComposerRegistry::registerXmlComposer < ext::set < string::LinearString < > > > ( );
+
+		registration::XmlWriterRegister < ext::set < common::ranked_symbol < object::Object, unsigned > > > ( );
+		registration::XmlWriterRegister < common::ranked_symbol < object::Object, unsigned > > ( );
+		registration::XmlWriterRegister < ext::vector < ext::map < std::pair < object::Object, object::Object >, ext::map < object::Object, object::Object > > > > ( );
+		registration::XmlWriterRegister < ext::vector < ext::vector < ext::set < object::Object > > > > ( );
+		registration::XmlWriterRegister < ext::map < common::ranked_symbol < object::Object, unsigned >, size_t > > ( );
+		registration::XmlWriterRegister < ext::set < string::LinearString < > > > ( );
 
 		abstraction::XmlParserRegistry::registerXmlParser < object::Object > ( "DefaultStateType" );
 
diff --git a/alib2xml/src/PrimitiveRegistrator.cpp b/alib2xml/src/PrimitiveRegistrator.cpp
index 19f962aea11949618d197b1273c13b788f5f594f..5a3b8ff2140a33a98d97820d183fe4f556bf9f29 100644
--- a/alib2xml/src/PrimitiveRegistrator.cpp
+++ b/alib2xml/src/PrimitiveRegistrator.cpp
@@ -5,8 +5,7 @@
  *	  Author: Jan Travnicek
  */
 
-#include <registry/XmlComposerRegistry.hpp>
-#include <registry/XmlParserRegistry.hpp>
+#include <registration/XmlRegistration.hpp>
 #include <registry/XmlContainerParserRegistry.hpp>
 #include <registry/ContainerRegistry.hpp>
 
@@ -33,15 +32,15 @@ public:
 		abstraction::XmlParserRegistry::registerXmlParser < int > ( "int" );
 		abstraction::XmlParserRegistry::registerXmlParser < ext::set < ext::pair < object::Object, object::Object > > > ( "pair_set" );
 
-		abstraction::XmlComposerRegistry::registerXmlComposer < ext::vector < size_t > > ( );
-		abstraction::XmlComposerRegistry::registerXmlComposer < ext::vector < unsigned > > ( );
-		abstraction::XmlComposerRegistry::registerXmlComposer < ext::vector < int > > ( );
-		abstraction::XmlComposerRegistry::registerXmlComposer < ext::set < size_t > > ( );
-		abstraction::XmlComposerRegistry::registerXmlComposer < ext::set < unsigned > > ( );
-		abstraction::XmlComposerRegistry::registerXmlComposer < ext::set < int > > ( );
-		abstraction::XmlComposerRegistry::registerXmlComposer < ext::map < object::Object, size_t > > ( );
-		abstraction::XmlComposerRegistry::registerXmlComposer < object::Object > ( );
-		abstraction::XmlComposerRegistry::registerXmlComposer < ext::set < object::Object > > ( );
+		registration::XmlWriterRegister < ext::vector < size_t > > ( );
+		registration::XmlWriterRegister < ext::vector < unsigned > > ( );
+		registration::XmlWriterRegister < ext::vector < int > > ( );
+		registration::XmlWriterRegister < ext::set < size_t > > ( );
+		registration::XmlWriterRegister < ext::set < unsigned > > ( );
+		registration::XmlWriterRegister < ext::set < int > > ( );
+		registration::XmlWriterRegister < ext::map < object::Object, size_t > > ( );
+		registration::XmlWriterRegister < object::Object > ( );
+		registration::XmlWriterRegister < ext::set < object::Object > > ( );
 
 		abstraction::ContainerRegistry::registerSet < object::Object > ( "Object" );
 		abstraction::XmlContainerParserRegistry::registerSet < object::Object > ( "Object" );