Handles the start and end tags, and attributes.  callout
        to get_formatted_content to get the textNode value.
        Parameters:
            elt -- ElementProxy/DOM element 
            sw -- SoapWriter instance
            pyobj -- processed content
            
        KeyWord Parameters:
            name -- substitute name, (nspname,name) or name
            orig --

def serialize(self, elt, sw, pyobj, name=None, orig=None, **kw):
        '''Handles the start and end tags, and attributes.  callout
        to get_formatted_content to get the textNode value.
        Parameters:
            elt -- ElementProxy/DOM element 
            sw -- SoapWriter instance
            pyobj -- processed content
            
        KeyWord Parameters:
            name -- substitute name, (nspname,name) or name
            orig --
            
        '''
        objid = _get_idstr(pyobj)
        ns,n = self.get_name(name, objid)

        # nillable
        el = elt.createAppendElement(ns, n)
        if self.nillable is True and pyobj is Nilled:
            self.serialize_as_nil(el)
            return None

        # other attributes
        self.set_attributes(el, pyobj)

        # soap href attribute
        unique = self.unique or kw.get('unique', False)
        if unique is False and sw.Known(orig or pyobj):
            self.set_attribute_href(el, objid)
            return None

        # xsi:type attribute 
        if kw.get('typed', self.typed) is True:
            self.set_attribute_xsi_type(el, **kw)

        # soap id attribute
        if self.unique is False:
            self.set_attribute_id(el, objid)

        #Content, <empty tag/>c
        self.serialize_text_node(el, sw, pyobj)

        return el