docs: def create(cls, data, id_=None, **kwargs):
          r"""Create a new record instance and store it in the database.
  
          #. Send a signal :data:`invenio_records.signals.before_record_insert`
             with the new record as parameter.
  
          #. Validate the new record data.
  
          #. Add the new record in the database.
  
          #. Send a signal :data:`invenio_records.signals.after_record_insert`
             with the new created record as parameter.
  
          :Keyword Arguments:
            * **format_checker** --
              An instance of the class :class:`jsonschema.FormatChecker`, which
              contains validation rules for formats. See
              :func:`~invenio_records.api.RecordBase.validate` for more details.
  
            * **validator** --
              A :class:`jsonschema.IValidator` class that will be used to
              validate the record. See
              :func:`~invenio_records.api.RecordBase.validate` for more details.
  
          :param data: Dict with the record metadata.
          :param id_: Specify a UUID to use for the new record, instead of
                      automatically generated.
          :returns: A new :class:`Record` instance.
          """
          from .models import RecordMetadata
          with db.session.begin_nested():
              record = cls(data)
  
              before_record_insert.send(
                  current_app._get_current_object(),
                  record=record
              )
  
              record.validate(**kwargs)
  
              record.model = RecordMetadata(id=id_, json=record)
  
              db.session.add(record.model)
  
          after_record_insert.send(
              current_app._get_current_object(),
              record=record
          )
          return record