docs: def _setID(self, id):
          """Set the ID, ie. the values for primary keys.
  
          id can be either a list, following the
          _sqlPrimary, or some other type, that will be set
          as the singleton ID (requires 1-length sqlPrimary).
          """
          if type(id) in (types.ListType, types.TupleType):
              try:
                  for key in self._sqlPrimary:
                      value = id[0]
                      self.__dict__[key] = value
                      id = id[1:] # rest, go revursive
              except IndexError:
                  raise 'Not enough id fields, required: %s' % len(self._sqlPrimary)
          elif len(self._sqlPrimary) <= 1:
              # It's a simple value
              key = self._sqlPrimary[0]
              self.__dict__[key] = id
          else:
              raise 'Not enough id fields, required: %s' % len(self._sqlPrimary)
          self._new = False