Panda XML model loader

I have already done this.

Example:

(Note, you need to do all your Panda imports and such…

#Import xml:
import xml.etree.ElementTree as xml

class Loader():

    def __init__(self):

        #Set some var's:
        self.currentObject = 0

        #Parse XML directly from the file path
        self.tree = xml.parse("level.xml")
        self.root = self.tree.getroot()
        self.objectList = self.root.findall("object")

        #Load level:
        if self.objectList != None:
            for n in self.objectList:

                self.element = n

                self.type = self.element.get("type")
                self.name = self.element.get("name")

                if self.type == "model":

                    self.path = self.element.get("path")
                    self.x = float(self.element.get("x"))
                    self.y = float(self.element.get("y"))
                    self.z = float(self.element.get("z"))

                    model = Model("models/"+self.path,self.x,self.y,self.z)


class Model():

    def __init__(self,path,x=0,y=0,z=0,h=0,p=0,r=0):

        #Load a model:
        self.model = main.loader.loadModel(path)

        #Set the position:
        self.model.setPos(x,y,z)

        #Reparent the model to render:
        self.model.reparentTo(render)

loader = Loader()

And the level it loads:

<world>
	<object name="Cube" type="model" path="Cube.egg" x="1" y="0" z="0" />
	<object name="Sphere" type="model" path="Sphere.egg" x="-1" y="0" z="0" />
</world>

If you expand on that, you can easily do what your asking for.