code: function ImmutableCoreModelResolveValue (args) {
      // store args
      this.data = args.data
      this.idColumn = args.idColumn
      this.isIdColumn = args.isIdColumn
      this.isObjectArray = args.isObjectArray
      this.isOriginalId = args.isOriginalId
      this.isPlural = args.isPlural
      this.model = args.model
      this.modelProperty = args.modelProperty
      this.objectArrayProperty = args.objectArrayProperty
      this.property = args.property
      this.query = args.query
      this.queryArgs = args.queryArgs
      this.value = _.get(this.data, this.property)
      // get property that will be used to set value from args
      if (defined(args.setProperty)) {
          this.setProperty = args.setProperty
      }
      // use default property for setting value
      else {
          // if resolving id column then set property with model name
          if (this.isIdColumn) {
              // if original property is plural then use plural name
              this.setProperty = this.isPlural ? `${this.model.name}s` : this.model.name
          }
          // otherwise use same property name
          else {
              this.setProperty = this.property
          }
      }
  }
docs: @function ImmutableCoreModelResolveValue
  
  resolve ImmutableCoreModelRecord(s) from array, object, or string
  containing an object id
  
  @param {object} args
  @param {object} args.data
  @param {string} args.idColumn
  @param {boolean} args.isIdColumn
  @param {boolean} args.isOriginalId
  @param {boolean} args.isPlural
  @param {ImmutableCoreModel} args.model
  @param {modelProperty} args.modelProperty
  @param {string} args.property
  @param {object} args.queryArgs
  
  @returns {ImmutableCoreModelQueryResolve}