code: public static Outcome create(final Record record) {
          final URI invocationID = record.getID();
          final Status status = Status.valueOf(record.getUnique(KSR.STATUS, URI.class));
          final URI objectID = record.getUnique(KSR.OBJECT, URI.class);
          final String message = record.getUnique(KSR.MESSAGE, String.class);
          return create(status, invocationID, objectID, message);
      }
docs: Creates a new {@code Outcome} starting from the {@code Record} supplied. The record ID is
  used as the invocation ID, while properties {@link KSR#STATUS}, {@link KSR#OBJECT} and
  {@link KSR#MESSAGE} are read, respectively, to recover the status code, the optional object
  ID and the optional message.
  
  @param record
  the record
  @return the created {@code Outcome}