def read(self,file,owner): _, tail = os.path.split(file) p = Project(None) tree = etree.parse(file) root = tree.getroot() #tj.root for child in root: #tj.project p_att = child.attrib #p.file = file p.name = tail p.owner = owner #p_att["owner"] p.dtFrom = datetime.strptime(p_att["dt_from"], "%d.%m.%Y") p.dtTo = datetime.strptime(p_att["dt_to"], "%d.%m.%Y") p.folderId = None for subChild in child: #tj.engine e = Engine(None) e_att = subChild.attrib e.name = e_att["name"] for subSubChild in subChild: #tj.job j = Job(None) j_att = subSubChild.attrib j.name = j_att["name"] j.days = int(j_att["days"]) j.duration = int(j_att["duration"]) j.start = datetime.strptime(j_att["start"], "%d.%m.%Y") j.color = j_att["color"] #j.engine = e.name e.addJob(j) p.addEngine(e) return p