docs: def _set_id_field(new_class):
          """Lookup the id field for this entity and assign"""
          # FIXME What does it mean when there are no declared fields?
          #   Does it translate to an abstract entity?
          if new_class.meta_.declared_fields:
              try:
                  new_class.meta_.id_field = next(
                      field for _, field in new_class.meta_.declared_fields.items()
                      if field.identifier)
              except StopIteration:
                  # If no id field is declared then create one
                  new_class._create_id_field()