docs: def _load(self, file_parser, section_name):
          """The current element is loaded from the configuration file,
          all constraints and requirements are checked.
          """
          # pylint: disable-msg=W0621
          log = logging.getLogger('argtoolbox')
          try:
              log.debug("looking for field (section=" + section_name
                        + ") : " + self._name)
              data = None
              try:
                  if self.e_type == int:
                      data = file_parser.getint(section_name, self._name)
                  elif self.e_type == float:
                      data = file_parser.getfloat(section_name, self._name)
                  elif self.e_type == bool:
                      data = file_parser.getboolean(section_name, self._name)
                  elif self.e_type == list:
                      data = file_parser.get(section_name, self._name)
                      data = data.strip()
                      data = data.decode(locale.getpreferredencoding())
                      data = data.split()
                      if not data:
                          msg = "The optional field '%(name)s' was present, \
  type is list, but the current value is an empty \
  list." % {"name": self._name}
                          log.error(msg)
                          raise ValueError(msg)
                  elif self.e_type == str:
                      data = file_parser.get(section_name, self._name)
                      # happens only when the current field is present,
                      # type is string, but value is ''
                      if not data:
                          msg = "The optional field '%(name)s' was present, \
                          type is string, but the current value is an empty \
                          string." % {"name": self._name}
                          log.error(msg)
                          raise ValueError(msg)
                      data = data.decode(locale.getpreferredencoding())
                  else:
                      msg = "Data type not supported : %(type)s " % {
                          "type": self.e_type}
                      log.error(msg)
                      raise TypeError(msg)
  
              except ValueError as ex:
                  msg = "The current field '%(name)s' was present, but the \
  required type is : %(e_type)s." %  {
                  "name": self._name,
                  "e_type": self.e_type
                  }
                  log.error(msg)
                  log.error(str(ex))
                  raise ValueError(str(ex))
  
              log_data = {"name": self._name, "data": data,
                          "e_type": self.e_type}
              if self.hidden:
                  log_data['data'] = "xxxxxxxx"
              log.debug("field found : '%(name)s', value : '%(data)s', \
  type : '%(e_type)s'", log_data)
              self.value = data
  
          except ConfigParser.NoOptionError:
              if self.conf_required:
                  msg = "The required field '%(name)s' was missing from the \
  config file." % {"name": self._name}
                  log.error(msg)
                  raise ValueError(msg)
  
              if self.default is not None:
                  self.value = self.default
                  log_data = {"name": self._name, "data": self.default,
                              "e_type": self.e_type}
                  if self.hidden:
                      log_data['data'] = "xxxxxxxx"
                  log.debug("Field not found : '%(name)s', default value : \
  '%(data)s', type : '%(e_type)s'", log_data)
              else:
                  log.debug("Field not found : '" + self._name + "'")