docs: function (parameters) {
  
          /**
           * Job identifier.
           * @type {string}
           */
          this.hash = parameters.hash;
  
          /**
           * Array of hashes to {@link Artifact}s containing each requested result.
           * @type {string[]}
           */
          this.resultHashes = parameters.resultHashes || [];
  
          /**
           * Hash to an {@link Artifact} containing the union of all requests results.
           * @type {string}
           */
          this.resultSuperSet = parameters.resultSuperSet || null;
  
          this.userId = parameters.userId || [];
  
          /**
           * Current status of the job.
           * @type {string}
           */
          this.status = parameters.status || null;
  
          /**
           * Timestamp of when the job was created.
           * @type {string}
           */
          this.createTime = parameters.createTime || null;
  
          /**
           * Timestamp of when the job execution started by a worker.
           * @type {string}
           */
          this.startTime = parameters.startTime || null;
  
          /**
           * Timestamp of when the job execution finished on the worker.
           * @type {string}
           */
          this.finishTime = parameters.finishTime || null;
  
          /**
           * Id/label of the worker processing the job.
           * @type {string}
           */
          this.worker = parameters.worker || null;
  
          /**
           * Array of labels for the job.
           * @type {string[]}
           */
          this.labels = parameters.labels || [];
  
          /**
           * The (id) outputNumber (0, 1, 2, ...) of the latest {@link OutputInfo} (for this job) available on the server.
           * When no output is available the number is <b>null</b>.
           * @type {number}
           */
          this.outputNumber = typeof parameters.outputNumber === 'number' ? parameters.outputNumber : null;
      }