code: def process_vts_params(self, scanner_vts):
          
          vt_selection = {}
          filters = list()
          for vt in scanner_vts:
              if vt.tag == 'vt_single':
                  vt_id = vt.attrib.get('id')
                  vt_selection[vt_id] = {}
                  for vt_value in vt:
                      if not vt_value.attrib.get('id'):
                          raise OSPDError('Invalid VT preference. No attribute id',
                                          'start_scan')
                      vt_value_id = vt_value.attrib.get('id')
                      vt_value_value = vt_value.text if vt_value.text else ''
                      vt_selection[vt_id][vt_value_id] = vt_value_value
              if vt.tag == 'vt_group':
                  vts_filter = vt.attrib.get('filter', None)
                  if vts_filter is None:
                      raise OSPDError('Invalid VT group. No filter given.',
                                      'start_scan')
                  filters.append(vts_filter)
          vt_selection['vt_groups'] = filters
          return vt_selection
docs: Receive an XML object with the Vulnerability Tests an their
          parameters to be use in a scan and return a dictionary.
  
          @param: XML element with vt subelements. Each vt has an
                  id attribute. Optional parameters can be included
                  as vt child.
                  Example form:
                  <vt_selection>
                    <vt_single id='vt1' />
                    <vt_single id='vt2'>
                      <vt_value id='param1'>value</vt_value>
                    </vt_single>
                    <vt_group filter='family=debian'/>
                    <vt_group filter='family=general'/>
                  </vt_selection>
  
          @return: Dictionary containing the vts attribute and subelements,
                   like the VT's id and VT's parameters.
                   Example form:
                   {'vt1': {},
                    'vt2': {'value_id': 'value'},
                    'vt_groups': ['family=debian', 'family=general']}