code: def _parse_xml(child, parser):
      
      name, modifiers, dtype, kind = _parse_common(child)
  
      #Handle the symbol modification according to the isense settings.
      name = _isense_builtin_symbol(name)
  
      if child.tag == "subroutine":
          parent = Subroutine(name, modifiers, None)
      elif child.tag == "function":
          parent = Function(name, modifiers, dtype, kind, None)
  
      if parent is not None:
          for kid in child:
              if kid.tag == "parameter":
                  _parse_parameter(kid, parser, parent)
              elif kid.tag == "summary":
                  _parse_summary(kid, parser, parent)
              elif kid.tag == "usage":
                  _parse_usage(kid, parser, parent)
  
      return parent
docs: Parses the specified child XML tag and creates a Subroutine or
      Function object out of it.