'Insert an L{Element} content at the specified index.
@param objects: A (single|collection) of attribute(s) or element(s)
to be added as children.
@type objects: (L{Element}|L{Attribute})
@param index: The position in the list of children to insert.
@type index: int
@return: self
@rtype: L{Element}'

def insert(self, objects, index=0):

    objects = (objects,)
    for child in objects:
        if isinstance(child, Element):
            self.children.insert(index, child)
            child.parent = self
        else:
            raise Exception(('append    %s    not-valid' % child.__class__.__name__))
    return self
