def _parseXml(self,cc):
        """ INPUT: XML file with captions
            OUTPUT: parsed object like:
                [{'texlines': [u"So, I'm going to rewrite this", 'in a more concise form as'],
                'time': {'hours':'1', 'min':'2','sec':44,'msec':232} }]
        """
        htmlpar = HTMLParser.HTMLParser()
        cc = cc.split("</text>") # ['<text start="2997.929">So, it will\nhas time', '<text start="3000.929">blah', ..]
        captions = []
        for line in cc:
            if re.search('text', line):
                time = re.search(r'start="(\d+)(?:\.(\d+)){0,1}', line).groups() # ('2997','929')
                time = ( int(time[0]), int(0 if not time[1] else time[1]) )
                    #convert seconds and millisec to int
                text = re.search(r'">(.*)', line, re.DOTALL).group(1) # extract text i.e. 'So, it will\nhas time'
                textlines = [ htmlpar.unescape(htmlpar.unescape( unicode(lineunparsed,"utf-8") )) for lineunparsed in text.split('\n') ] 
                    #unscape chars like &amp; or &#39;
                ntime = {'hours':time[0]/3600,"min":time[0]%3600/60,"sec":time[0]%3600%60,"msec":time[1]}
                captions.append({'time':ntime,'textlines':textlines})
        return captions
INPUT: XML file with captions
            OUTPUT: parsed object like:
                [{'texlines': [u"So, I'm going to rewrite this", 'in a more concise form as'],
                'time': {'hours':'1', 'min':'2','sec':44,'msec':232} }]