Index: code/branches/objecthierarchy/src/orxonox/gamestates/GSDedicated.cc
===================================================================
--- code/branches/objecthierarchy/src/orxonox/gamestates/GSDedicated.cc	(revision 2007)
+++ code/branches/objecthierarchy/src/orxonox/gamestates/GSDedicated.cc	(revision 2010)
@@ -35,4 +35,5 @@
 #include "core/CommandLine.h"
 #include "core/Loader.h"
+#include "core/XMLFile.h"
 #include "core/Core.h"
 #include "network/Server.h"
@@ -48,5 +49,5 @@
         , server_(0)
         , sceneManager_(0)
-        , startLevel_(0)
+        , startFile_(0)
     {
     }
@@ -74,6 +75,6 @@
         // call the loader
         COUT(0) << "Loading level..." << std::endl;
-        startLevel_ = new Level(Settings::getDataPath() + "levels/sample.oxw");
-        Loader::open(startLevel_);
+        startFile_ = new XMLFile(Settings::getDataPath() + "levels/sample.oxw");
+        Loader::open(startFile_);
 
         server_->open();
@@ -89,6 +90,6 @@
         // TODO: Remove and destroy console command
 
-        Loader::unload(startLevel_);
-        delete this->startLevel_;
+        Loader::unload(startFile_);
+        delete this->startFile_;
 
         this->server_->close();
Index: code/branches/objecthierarchy/src/orxonox/gamestates/GSDedicated.h
===================================================================
--- code/branches/objecthierarchy/src/orxonox/gamestates/GSDedicated.h	(revision 2007)
+++ code/branches/objecthierarchy/src/orxonox/gamestates/GSDedicated.h	(revision 2010)
@@ -56,5 +56,5 @@
         network::Server*      server_;
         Ogre::SceneManager*   sceneManager_;
-        Level*                startLevel_;       //!< current hard coded default level
+        XMLFile*              startFile_;        //!< current hard coded default level
     };
 }
Index: code/branches/objecthierarchy/src/orxonox/gamestates/GSLevel.cc
===================================================================
--- code/branches/objecthierarchy/src/orxonox/gamestates/GSLevel.cc	(revision 2007)
+++ code/branches/objecthierarchy/src/orxonox/gamestates/GSLevel.cc	(revision 2010)
@@ -36,4 +36,5 @@
 #include "core/input/KeyBinder.h"
 #include "core/Loader.h"
+#include "core/XMLFile.h"
 #include "core/CommandExecutor.h"
 #include "core/ConsoleCommand.h"
@@ -56,5 +57,5 @@
         , inputState_(0)
         , radar_(0)
-        , startLevel_(0)
+        , startFile_(0)
     {
         RegisterObject(GSLevel);
@@ -154,12 +155,12 @@
         // call the loader
         COUT(0) << "Loading level..." << std::endl;
-        startLevel_ = new Level(Settings::getDataPath() + "levels/sample2.oxw");
-        Loader::open(startLevel_);
+        startFile_ = new XMLFile(Settings::getDataPath() + "levels/sample2.oxw");
+        Loader::open(startFile_);
     }
 
     void GSLevel::unloadLevel()
     {
-        Loader::unload(startLevel_);
-        delete this->startLevel_;
+        Loader::unload(startFile_);
+        delete this->startFile_;
     }
 
Index: code/branches/objecthierarchy/src/orxonox/gamestates/GSLevel.h
===================================================================
--- code/branches/objecthierarchy/src/orxonox/gamestates/GSLevel.h	(revision 2007)
+++ code/branches/objecthierarchy/src/orxonox/gamestates/GSLevel.h	(revision 2010)
@@ -68,5 +68,5 @@
         SimpleInputState*     inputState_;
         Radar*                radar_;            //!< represents the Radar (not the HUD part)
-        Level*                startLevel_;       //!< current hard coded default level
+        XMLFile*              startFile_;        //!< current hard coded default level
 
         // config values
Index: code/branches/objecthierarchy/src/orxonox/objects/infos/LevelInfo.cc
===================================================================
--- code/branches/objecthierarchy/src/orxonox/objects/infos/LevelInfo.cc	(revision 2007)
+++ code/branches/objecthierarchy/src/orxonox/objects/infos/LevelInfo.cc	(revision 2010)
@@ -38,4 +38,5 @@
 #include "core/ConsoleCommand.h"
 #include "core/Loader.h"
+#include "core/XMLFile.h"
 #include "core/Template.h"
 
@@ -152,19 +153,19 @@
         XMLPortParam(LevelInfo, "ambientlight", setAmbientLight, getAmbientLight, xmlelement, mode).defaultValues(ColourValue(0.2, 0.2, 0.2, 1));
 
-        this->levelfile_ = this->getLevelfile();
+        this->xmlfile_ = this->getFilename();
     }
 
     void LevelInfo::registerVariables()
     {
-        REGISTERSTRING(this->levelfile_,    network::direction::toclient, new network::NetworkCallback<LevelInfo>(this, &LevelInfo::applyLevel));
-        REGISTERSTRING(this->name_,         network::direction::toclient, new network::NetworkCallback<LevelInfo>(this, &LevelInfo::changedName));
-        REGISTERSTRING(this->description_,  network::direction::toclient);
-        REGISTERSTRING(this->skybox_,       network::direction::toclient, new network::NetworkCallback<LevelInfo>(this, &LevelInfo::applySkybox));
-        REGISTERDATA(this->ambientLight_, network::direction::toclient, new network::NetworkCallback<LevelInfo>(this, &LevelInfo::applyAmbientLight));
-    }
-
-    void LevelInfo::applyLevel()
-    {
-        COUT(0) << "Loading level \"" << this->levelfile_ << "\"..." << std::endl;
+        REGISTERSTRING(this->xmlfile_,     network::direction::toclient, new network::NetworkCallback<LevelInfo>(this, &LevelInfo::applyXMLFile));
+        REGISTERSTRING(this->name_,        network::direction::toclient, new network::NetworkCallback<LevelInfo>(this, &LevelInfo::changedName));
+        REGISTERSTRING(this->description_, network::direction::toclient);
+        REGISTERSTRING(this->skybox_,      network::direction::toclient, new network::NetworkCallback<LevelInfo>(this, &LevelInfo::applySkybox));
+        REGISTERDATA(this->ambientLight_,  network::direction::toclient, new network::NetworkCallback<LevelInfo>(this, &LevelInfo::applyAmbientLight));
+    }
+
+    void LevelInfo::applyXMLFile()
+    {
+        COUT(0) << "Loading level \"" << this->xmlfile_ << "\"..." << std::endl;
 
         ClassTreeMask mask;
@@ -172,7 +173,7 @@
         mask.include(Class(Template));
 
-        Level* level = new Level(Settings::getDataPath() + this->levelfile_, mask);
-
-        Loader::open(level);
+        XMLFile* file = new XMLFile(Settings::getDataPath() + this->xmlfile_, mask);
+
+        Loader::open(file);
     }
 
Index: code/branches/objecthierarchy/src/orxonox/objects/infos/LevelInfo.h
===================================================================
--- code/branches/objecthierarchy/src/orxonox/objects/infos/LevelInfo.h	(revision 2007)
+++ code/branches/objecthierarchy/src/orxonox/objects/infos/LevelInfo.h	(revision 2010)
@@ -80,5 +80,5 @@
             virtual void clientDisconnected(unsigned int clientID);
 
-            void applyLevel();
+            void applyXMLFile();
 
             void applySkybox()
@@ -94,5 +94,5 @@
             SubclassIdentifier<Gametype> gametypeIdentifier_;
             Gametype* rootGametype_;
-            std::string levelfile_;
+            std::string xmlfile_;
     };
 }
