{
  "addedInModelVersion" : 1200,
  "ash" : {
    "generateResource" : "Y"
  },
  "attributes" : [
    {
      "addedInModelVersion" : 1200,
      "allowsNull" : "N",
      "ash" : {
        "includeInResource" : "Y"
      },
      "columnName" : "_rowid",
      "externalType" : "longlong",
      "isIndexed" : "Y",
      "name" : "bookingDefinitionAssigneeID",
      "record" : {
        "allowsRecord" : "Y",
        "isInternal" : "N",
        "isUpdatable" : "Y"
      },
      "valueClassName" : "NSNumber",
      "valueType" : "i"
    },
    {
      "addedInModelVersion" : 1200,
      "allowsNull" : "Y",
      "ash" : {
        "includeInResource" : "Y"
      },
      "columnName" : "createDate",
      "externalType" : "datetime",
      "name" : "createDate",
      "record" : {
        "allowsRecord" : "Y",
        "isInternal" : "N",
        "isUpdatable" : "Y"
      },
      "valueClassName" : "NSDate"
    },
    {
      "addedInModelVersion" : 1200,
      "allowsNull" : "Y",
      "ash" : {
        "includeInResource" : "Y"
      },
      "columnName" : "modifyDate",
      "externalType" : "datetime",
      "name" : "modifyDate",
      "record" : {
        "allowsRecord" : "Y",
        "isInternal" : "N",
        "isUpdatable" : "Y"
      },
      "valueClassName" : "NSDate"
    },
    {
      "addedInModelVersion" : 1200,
      "ash" : {
        "includeInResource" : "Y"
      },
      "columnName" : "ordering",
      "defaultValue" : "0",
      "externalType" : "int",
      "name" : "order",
      "purpose" : "The order of assignees determines their priority.",
      "record" : {
        "allowsRecord" : "Y",
        "isInternal" : "N",
        "isUpdatable" : "Y"
      },
      "valueClassName" : "Integer"
    },
    {
      "addedInModelVersion" : 1200,
      "allowsNull" : "Y",
      "ash" : {
        "includeInResource" : "Y"
      },
      "columnName" : "archivedDate",
      "externalType" : "datetime",
      "name" : "archivedDate",
      "purpose" : "The date that the assignee was archived.\n\nThe `archivedBy` relationship and `archivedDate` attribute must be set together.",
      "record" : {
        "allowsRecord" : "Y",
        "isInternal" : "N",
        "isUpdatable" : "Y"
      },
      "valueClassName" : "NSDate"
    },
    {
      "addedInModelVersion" : 1200,
      "allowsNull" : "Y",
      "ash" : {
        "includeInResource" : "Y"
      },
      "columnName" : "bookingDefinitionID",
      "externalType" : "longlong",
      "isIndexed" : "Y",
      "name" : "bookingDefinitionID",
      "record" : {
        "allowsRecord" : "Y",
        "isInternal" : "N",
        "isUpdatable" : "Y"
      },
      "valueClassName" : "NSNumber",
      "valueType" : "i"
    },
    {
      "addedInModelVersion" : 1200,
      "allowsNull" : "Y",
      "ash" : {
        "includeInResource" : "Y"
      },
      "columnName" : "userID",
      "externalType" : "longlong",
      "isIndexed" : "Y",
      "name" : "userID",
      "record" : {
        "allowsRecord" : "Y",
        "isInternal" : "N",
        "isUpdatable" : "Y"
      },
      "valueClassName" : "NSNumber",
      "valueType" : "i"
    },
    {
      "addedInModelVersion" : 1200,
      "allowsNull" : "Y",
      "ash" : {
        "includeInResource" : "Y"
      },
      "columnName" : "availabilityScheduleID",
      "externalType" : "longlong",
      "isIndexed" : "Y",
      "name" : "availabilityScheduleID",
      "record" : {
        "allowsRecord" : "Y",
        "isInternal" : "N",
        "isUpdatable" : "Y"
      },
      "valueClassName" : "NSNumber",
      "valueType" : "i"
    },
    {
      "addedInModelVersion" : 1200,
      "allowsNull" : "Y",
      "ash" : {
        "includeInResource" : "Y"
      },
      "columnName" : "archivedByID",
      "externalType" : "longlong",
      "isIndexed" : "Y",
      "name" : "archivedByID",
      "record" : {
        "allowsRecord" : "Y",
        "isInternal" : "N",
        "isUpdatable" : "Y"
      },
      "valueClassName" : "NSNumber",
      "valueType" : "i"
    }
  ],
  "className" : "GWBookingDefinitionAssignee",
  "classProperties" : [
    "bookingDefinitionAssigneeID",
    "createDate",
    "modifyDate",
    "order",
    "archivedDate",
    "bookingDefinitionID",
    "userID",
    "availabilityScheduleID",
    "archivedByID",
    "bookingDefinition",
    "user",
    "availabilitySchedule",
    "archivedBy"
  ],
  "domain" : "OnlineBooking",
  "externalName" : "BookingDefinitionAssignee",
  "isDatabasePreference" : false,
  "isTrashable" : false,
  "localizationKey" : "Assignee",
  "localizationPluralKey" : "Assignees",
  "moduleName" : "DLSubstrate",
  "name" : "BookingDefinitionAssignee",
  "primaryKeyAttributes" : [
    "bookingDefinitionAssigneeID"
  ],
  "purpose" : "The assignee adds a user and a chosen availability schedule to a booking definition.",
  "record" : {
    "allowsRecord" : "Y",
    "isDirectlyUpdatable" : "Y"
  },
  "relationships" : [
    {
      "addedInModelVersion" : 1200,
      "ash" : {
        "includeInResource" : "Y"
      },
      "destination" : "BookingDefinition",
      "isToMany" : "N",
      "joins" : [
        {
          "destinationAttribute" : "bookingDefinitionID",
          "sourceAttribute" : "bookingDefinitionID"
        }
      ],
      "joinSemantic" : "EOInnerJoin",
      "name" : "bookingDefinition",
      "purpose" : "The booking definition that this assignee belongs to.",
      "record" : {
        "allowsRecord" : "Y",
        "isEmbedded" : "N",
        "isInternal" : "N",
        "propagatesUpdates" : "N"
      }
    },
    {
      "addedInModelVersion" : 1200,
      "ash" : {
        "includeInResource" : "Y"
      },
      "destination" : "User",
      "isToMany" : "N",
      "joins" : [
        {
          "destinationAttribute" : "userID",
          "sourceAttribute" : "userID"
        }
      ],
      "joinSemantic" : "EOInnerJoin",
      "name" : "user",
      "purpose" : "The Daylite user assigned to the booking definition.",
      "record" : {
        "allowsRecord" : "Y",
        "isEmbedded" : "N",
        "isInternal" : "N",
        "propagatesUpdates" : "N"
      }
    },
    {
      "addedInModelVersion" : 1200,
      "ash" : {
        "includeInResource" : "Y"
      },
      "destination" : "AvailabilitySchedule",
      "isToMany" : "N",
      "joins" : [
        {
          "destinationAttribute" : "availabilityScheduleID",
          "sourceAttribute" : "availabilityScheduleID"
        }
      ],
      "joinSemantic" : "EOInnerJoin",
      "name" : "availabilitySchedule",
      "purpose" : "The availability schedule used for the assignee.",
      "record" : {
        "allowsRecord" : "Y",
        "isEmbedded" : "N",
        "isInternal" : "N",
        "propagatesUpdates" : "N"
      }
    },
    {
      "addedInModelVersion" : 1200,
      "ash" : {
        "includeInResource" : "Y"
      },
      "destination" : "User",
      "isToMany" : "N",
      "joins" : [
        {
          "destinationAttribute" : "userID",
          "sourceAttribute" : "archivedByID"
        }
      ],
      "joinSemantic" : "EOInnerJoin",
      "name" : "archivedBy",
      "purpose" : "The user that archived this assignee booking definition.\n\nThe `archivedBy` relationship and `achivedDate` attribute must be set together.",
      "record" : {
        "allowsRecord" : "Y",
        "isEmbedded" : "N",
        "isInternal" : "N",
        "propagatesUpdates" : "N"
      }
    }
  ],
  "supportsPermissions" : false,
  "uniqueIdentifier" : 227
}