{
  "addedInModelVersion" : 1200,
  "ash" : {
    "generateResource" : "Y"
  },
  "attributes" : [
    {
      "addedInModelVersion" : 1200,
      "allowsNull" : "N",
      "ash" : {
        "includeInResource" : "Y"
      },
      "columnName" : "_rowid",
      "externalType" : "longlong",
      "isIndexed" : "Y",
      "name" : "availabilitySegmentID",
      "record" : {
        "allowsRecord" : "Y",
        "isInternal" : "N",
        "isUpdatable" : "Y"
      },
      "valueClassName" : "NSNumber",
      "valueType" : "i"
    },
    {
      "addedInModelVersion" : 1200,
      "ash" : {
        "includeInResource" : "Y"
      },
      "columnName" : "startTime",
      "externalType" : "char",
      "name" : "startTime",
      "purpose" : "The start time for the segment.\n\nThe time-of-day is evaluated in the availability schedule’s time zone.",
      "record" : {
        "allowsRecord" : "Y",
        "isInternal" : "N",
        "isUpdatable" : "Y"
      },
      "valueClassName" : "Time",
      "width" : 128
    },
    {
      "addedInModelVersion" : 1200,
      "ash" : {
        "includeInResource" : "Y"
      },
      "columnName" : "endTime",
      "externalType" : "char",
      "name" : "endTime",
      "purpose" : "The end time for the segment.\n\nThe time-of-day is evaluated in the availability schedule’s time zone.",
      "record" : {
        "allowsRecord" : "Y",
        "isInternal" : "N",
        "isUpdatable" : "Y"
      },
      "valueClassName" : "Time",
      "width" : 128
    },
    {
      "addedInModelVersion" : 1200,
      "ash" : {
        "includeInResource" : "Y"
      },
      "columnName" : "dayOfWeek",
      "defaultValue" : "0",
      "externalType" : "int",
      "name" : "dayOfWeek",
      "purpose" : "The day of the week that this segment applies to, when used for an availability schedule (and not an availability override).",
      "record" : {
        "allowsRecord" : "Y",
        "isInternal" : "N",
        "isUpdatable" : "Y"
      },
      "valueClassName" : "EnumInteger",
      "valueEnum" : "AvailabilitySegmentDayOfWeek"
    },
    {
      "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" : "availabilityOverrideID",
      "externalType" : "longlong",
      "isIndexed" : "Y",
      "name" : "availabilityOverrideID",
      "record" : {
        "allowsRecord" : "Y",
        "isInternal" : "N",
        "isUpdatable" : "Y"
      },
      "valueClassName" : "NSNumber",
      "valueType" : "i"
    }
  ],
  "className" : "GWAvailabilitySegment",
  "classProperties" : [
    "availabilitySegmentID",
    "startTime",
    "endTime",
    "dayOfWeek",
    "availabilityScheduleID",
    "availabilityOverrideID",
    "availabilitySchedule",
    "availabilityOverride"
  ],
  "domain" : "OnlineBooking",
  "enums" : [
    {
      "addedInModelVersion" : 1200,
      "items" : [
        {
          "addedInModelVersion" : 1200,
          "name" : "Monday",
          "value" : 1
        },
        {
          "addedInModelVersion" : 1200,
          "name" : "Tuesday",
          "value" : 2
        },
        {
          "addedInModelVersion" : 1200,
          "name" : "Wednesday",
          "value" : 3
        },
        {
          "addedInModelVersion" : 1200,
          "name" : "Thursday",
          "value" : 4
        },
        {
          "addedInModelVersion" : 1200,
          "name" : "Friday",
          "value" : 5
        },
        {
          "addedInModelVersion" : 1200,
          "name" : "Saturday",
          "value" : 6
        },
        {
          "addedInModelVersion" : 1200,
          "name" : "Sunday",
          "value" : 7
        },
        {
          "addedInModelVersion" : 1200,
          "name" : "NotSpecified",
          "purpose" : "For date-specific overrides, a `NotSpecified` value is used instead of a weekday.",
          "value" : 0
        }
      ],
      "name" : "AvailabilitySegmentDayOfWeek",
      "purpose" : "The day of the week that a segment applies to.\n\nThe raw integer values are aligned with ISO 8601's day-of-week representations.",
      "type" : 1
    }
  ],
  "externalName" : "AvailabilitySegment",
  "isDatabasePreference" : false,
  "isTrashable" : false,
  "moduleName" : "DLSubstrate",
  "name" : "AvailabilitySegment",
  "primaryKeyAttributes" : [
    "availabilitySegmentID"
  ],
  "purpose" : "Represents a time range that an assignee is available for meetings.\n\nSegments are used for the base `AvailabilitySchedule`, where the `dayOfWeek` attribute specifies which day they belong to; or as part of an `AvailabilityOverride`, where `dayOfWeek` is unused, and the segment only applies to the date-specific override.",
  "record" : {
    "allowsRecord" : "Y",
    "isDirectlyUpdatable" : "Y"
  },
  "relationships" : [
    {
      "addedInModelVersion" : 1200,
      "ash" : {
        "includeInResource" : "Y"
      },
      "destination" : "AvailabilitySchedule",
      "isToMany" : "N",
      "joins" : [
        {
          "destinationAttribute" : "availabilityScheduleID",
          "sourceAttribute" : "availabilityScheduleID"
        }
      ],
      "joinSemantic" : "EOInnerJoin",
      "name" : "availabilitySchedule",
      "purpose" : "The availability schedule that this segment applies to.",
      "record" : {
        "allowsRecord" : "Y",
        "isEmbedded" : "N",
        "isInternal" : "N",
        "propagatesUpdates" : "N"
      }
    },
    {
      "addedInModelVersion" : 1200,
      "ash" : {
        "includeInResource" : "Y"
      },
      "destination" : "AvailabilityOverride",
      "isToMany" : "N",
      "joins" : [
        {
          "destinationAttribute" : "availabilityOverrideID",
          "sourceAttribute" : "availabilityOverrideID"
        }
      ],
      "joinSemantic" : "EOInnerJoin",
      "name" : "availabilityOverride",
      "record" : {
        "allowsRecord" : "Y",
        "isEmbedded" : "N",
        "isInternal" : "N",
        "propagatesUpdates" : "N"
      }
    }
  ],
  "supportsPermissions" : false,
  "uniqueIdentifier" : 222
}