Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 1f34149679700274d273f929cf13b29a > files > 1178

PyXB-1.1.2-1.fc15.noarch.rpm

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())