docs: def _parse_entry_record(self, lines):
          """Parse a single entry record from a list of lines."""
          dn = None
          entry = OrderedDict()
  
          for line in lines:
              attr_type, attr_value = self._parse_attr(line)
  
              if attr_type == 'dn':
                  self._check_dn(dn, attr_value)
                  dn = attr_value
              elif attr_type == 'version' and dn is None:
                  pass  # version = 1
              else:
                  if dn is None:
                      self._error('First line of record does not start '
                          'with "dn:": %s' % attr_type)
                  if attr_value is not None and \
                           attr_type.lower() not in self._ignored_attr_types:
                      if attr_type in entry:
                          entry[attr_type].append(attr_value)
                      else:
                          entry[attr_type] = [attr_value]
  
          return dn, entry