#NEWLINE# def endElement( self , full_name ) : #NEWLINE# #INDENT# name = self . _build_name ( full_name ) #NEWLINE# if ( len ( self . path ) == self . item_depth ) : #NEWLINE# #INDENT# item = self . item #NEWLINE# if ( item is None ) : #NEWLINE# #INDENT# item = self . data #NEWLINE# #UNINDENT# should_continue = self . item_callback ( self . path , item ) #NEWLINE# if ( not should_continue ) : #NEWLINE# #INDENT# raise ParsingInterrupted ( ) #NEWLINE# #UNINDENT# #UNINDENT# if len ( self . stack ) : #NEWLINE# #INDENT# ( item , data ) = ( self . item , self . data ) #NEWLINE# ( self . item , self . data ) = self . stack . pop ( ) #NEWLINE# if ( self . strip_whitespace and ( data is not None ) ) : #NEWLINE# #INDENT# data = ( data . strip ( ) or None ) #NEWLINE# #UNINDENT# if ( data and self . force_cdata and ( item is None ) ) : #NEWLINE# #INDENT# item = self . dict_constructor ( ) #NEWLINE# #UNINDENT# if ( item is not None ) : #NEWLINE# #INDENT# if data : #NEWLINE# #INDENT# self . push_data ( item , self . cdata_key , data ) #NEWLINE# #UNINDENT# self . item = self . push_data ( self . item , name , item ) #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# self . item = self . push_data ( self . item , name , data ) #NEWLINE# #UNINDENT# #UNINDENT# else : #NEWLINE# #INDENT# self . item = self . data = None #NEWLINE# #UNINDENT# self . path . pop ( )