'@returns vulns A dict of Vulnerability Definitions'

def get_vuln_definitions(self, tree):

    vulns = dict()
    for vulnsDef in tree.iter('VulnerabilityDefinitions'):
        for vulnDef in vulnsDef.iter('vulnerability'):
            vid = vulnDef.get('id').lower()
            vector = vulnDef.get('cvssVector')
            vuln = {'desc': '', 'name': vulnDef.get('title'), 'refs': [('vector:    ' + vector), vid], 'resolution': '', 'severity': ((int(vulnDef.get('severity')) - 1) / 2), 'tags': list(), 'is_web': vid.startswith('http-')}
            for item in list(vulnDef):
                if (item.tag == 'description'):
                    for htmlType in list(item):
                        vuln['desc'] += self.parse_html_type(htmlType)
                if (item.tag == 'exploits'):
                    for exploit in list(item):
                        if (exploit.get('title') and exploit.get('link')):
                            title = exploit.get('title').encode('ascii', errors='backslashreplace').strip()
                            link = exploit.get('link').encode('ascii', errors='backslashreplace').strip()
                            vuln['refs'].append(((title + '    ') + link))
                if (item.tag == 'references'):
                    for ref in list(item):
                        if ref.text:
                            rf = ref.text.encode('ascii', errors='backslashreplace').strip()
                            vuln['refs'].append(rf)
                if (item.tag == 'solution'):
                    for htmlType in list(item):
                        vuln['resolution'] += self.parse_html_type(htmlType)
                "\n                                                                                #    there    is    currently    no    method    to    register    tags    in    vulns\n                                                                                if    item.tag    ==    'tags':\n                                                                                                for    tag    in    list(item):\n                                                                                                                vuln['tags'].append(tag.text.lower())\n                                                                                "
            vulns[vid] = vuln
    return vulns
