- uri = etree.Element(DB+'uri',nsmap=NSMAP)
- ln = etree.SubElement(uri, DB+'link')
- ln.set(XLINK+'href',self.osmlink())
- imo = etree.SubElement(ln, DB+'inlinemediaobject')
- io = etree.SubElement(imo, DB+'imageobject', condition="web")
- idat = etree.SubElement(io , DB+'imagedata',
- fileref=encode(self.latitude, self.longitude)+'.png',
- format='PNG')
- to = etree.SubElement(imo, DB+'textobject')
- ph = etree.SubElement(to, DB+'phrase')
- ph.text = "geo:"+str(self.latitude)+","+str(self.longitude)
- para = etree.SubElement(ln, DB+'para')
- para.text = self.dms()
+ img = encode(self.latitude, self.longitude)+'.png'
+ phr = "geo:"+str(self.latitude)+","+str(self.longitude)
+
+ db = ElementMaker(namespace=const.DB_NS, nsmap=const.NSMAP)
+ uri = db.uri(db.link(
+ db.inlinemediaobject(
+ db.imageobject(db.imagedata(
+ fileref=img,
+ format='PNG'))
+ db.textobject(db.phrase(phr))
+ ),
+ db.para(self.dms())
+ **{const.XLINK+"href": self.osmlink()}))