En Sun, 11 Feb 2007 15:15:21 -0300, Rajarshi <[EMAIL PROTECTED]> escribió:
> Hi, I'm using ElementTree for some RSS processing. The point where I > face a problem is that within an <item></item> I need to add another > child node (in addition to <link> etc) which is a well-formed XML > document (Chemical Markup Language to be precise). > > So my code looks like: > > import cElementTree as ET > > c = open('x.cml').readlines() > c = string.join(c) > cml = ET.XML(c) All the above thing can be replaced by: cml = ET.parse("x.cml") > > Now I also have the following code: > > def addItem(self, title, link, description, cml = None): > RSSitem = ET.SubElement ( self.RSSchannel, 'item' ) > > ET.SubElement( RSSitem, 'title' ).text = title > ET.SubElement( RSSitem, 'description' ).text = description > > What I'm confused is how I can add the cml Element object that I > generated, to the RSSitem as a child node. SubElement is just a convenience function for creating a new element and appending it to an existing parent element. As you already have the new subelement, just use append: RSSitem.append(cml) See the documentation at http://www.effbot.org/zone/element-index.htm -- Gabriel Genellina -- http://mail.python.org/mailman/listinfo/python-list