xml_file = 'ipo.xml' import pyxb.binding.saxer import ipo def ShowOrder (order): print '%s is sending %s %d thing(s):' % (order.billTo().name(), order.shipTo().name(), len(order.items().item())) for item in order.items().item(): print ' Quantity %d of %s at $%s' % (item.quantity(), item.productName(), item.USPrice()) if False: import pyxb.utils.domutils xmld = pyxb.utils.domutils.StringToDOM(file(xml_file).read()) dom_value = ipo.CreateFromDOM(xmld.documentElement) ShowOrder(dom_value) saxer = pyxb.binding.saxer.make_parser() handler = saxer.getContentHandler() saxer.parse(file(xml_file)) ShowOrder(handler.rootObject())