def _parse_tree(self, node):
        """ Parse a <review> object """
        if 'date' in node.attrib:
            dt = dateutil.parser.parse(node.attrib['date'])
            self.date = int(dt.strftime("%s"))
        if 'id' in node.attrib:
            self.id = node.attrib['id']
        if 'karma' in node.attrib:
            self.karma = int(node.attrib['karma'])
        if 'score' in node.attrib:
            self.score = int(node.attrib['score'])
        if 'rating' in node.attrib:
            self.rating = int(node.attrib['rating'])
        for c3 in node:
            if c3.tag == 'lang':
                self.locale = c3.text
            if c3.tag == 'version':
                self.version = c3.text
            if c3.tag == 'reviewer_id':
                self.reviewer_id = c3.text
            if c3.tag == 'reviewer_name':
                self.reviewer_name = c3.text
            if c3.tag == 'summary':
                self.summary = c3.text
            if c3.tag == 'description':
                self.description = _parse_desc(c3)
            if c3.tag == 'metadata':
                for c4 in c3:
                    if c4.tag == 'value':
                        if 'key' in c4.attrib:
                            self.metadata[c4.attrib['key']] = c4.text