{
  "swagger": "2.0",
  "x-otm-resource": {
    "namespace": "http://www.opentravel.org/OTM/resources/HospitalityResources/v1",
    "localName": "FacilityResource"
  },
  "info": {
    "title": "FacilityResource",
    "x-otm-library": {
      "ResourceName": "FacilityResource",
      "LibraryName": "HospitalityFacility",
      "LibraryVersion": "1.0.0",
      "LibraryStatus": "FINAL",
      "SourceFile": "/HospitalityFacility_1_0_0.otm",
      "CompilerVersion": "4.0-SNAPSHOT",
      "CompileDate": "2018-04-05T08:59:59.461-0400"
    },
    "description": "Describes a facility (e.g. Hotel Facility,Conference Facility, Golf Facility).  A facility must have a single address and a single geolocation.",
    "version": "1.0.0"
  },
  "host": "127.0.0.1",
  "basePath": "/",
  "schemes": [
    "http"
  ],
  "paths": {
    "/HospitalityFindHospitalityAvailability": {
      "post": {
        "summary": "FacilityResource - FindHospitalityAvailability",
        "operationId": "FindHospitalityAvailability",
        "consumes": [
          "application/xml",
          "application/json"
        ],
        "produces": [
          "application/json",
          "application/xml"
        ],
        "parameters": [
          {
            "name": "FacilityQueryFindHospitalityAvailability",
            "in": "body",
            "description": "Describes a facility (e.g. Hotel Facility,Conference Facility, Golf Facility).  A facility must have a single address and a single geolocation.",
            "required": true,
            "schema": {
              "$ref": "#/definitions/FacilityQueryFindHospitalityAvailability"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/FacilityQueryFindHospitalityAvailability"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          },
          "400": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          },
          "401": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          },
          "402": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          },
          "403": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          },
          "404": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          },
          "500": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          }
        }
      }
    },
    "/HospitalityRetrieveFacilityAvailability": {
      "post": {
        "summary": "FacilityResource - RetrieveHospitalityAvailability",
        "operationId": "RetrieveHospitalityAvailability",
        "consumes": [
          "application/xml",
          "application/json"
        ],
        "produces": [
          "application/json",
          "application/xml"
        ],
        "parameters": [
          {
            "name": "FacilityQueryRetrieveHospitalityAvailability",
            "in": "body",
            "description": "Describes a facility (e.g. Hotel Facility,Conference Facility, Golf Facility).  A facility must have a single address and a single geolocation.",
            "required": true,
            "schema": {
              "$ref": "#/definitions/FacilityQueryRetrieveHospitalityAvailability"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/FacilityQueryRetrieveHospitalityAvailability"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          },
          "400": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          },
          "401": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          },
          "402": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          },
          "403": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          },
          "404": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          },
          "500": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          }
        }
      }
    },
    "/Facilities": {
      "post": {
        "summary": "FacilityResource - HospitalityFacilitySearch",
        "operationId": "HospitalityFacilitySearch",
        "consumes": [
          "application/json",
          "application/xml"
        ],
        "produces": [
          "application/json",
          "application/xml"
        ],
        "parameters": [
          {
            "name": "FacilityQueryFacilitySearch",
            "in": "body",
            "description": "Describes a facility (e.g. Hotel Facility,Conference Facility, Golf Facility).  A facility must have a single address and a single geolocation.",
            "required": true,
            "schema": {
              "$ref": "#/definitions/FacilityQueryFacilitySearch"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/FacilityQueryFacilitySearch"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          },
          "400": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          },
          "401": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          },
          "402": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          },
          "403": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          },
          "404": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          },
          "500": {
            "description": "",
            "schema": {
              "$ref": "#/definitions/HospitalityFacilities"
            },
            "x-xml-schema": {
              "$ref": "HospitalityFacility_1_0_0_Trim.xsd#/HospitalityFacilities"
            }
          }
        }
      }
    }
  },
  "definitions": {
    "DocumentType_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "DocumentType_Enum"
      },
      "description": "Defines the specific type of identification or certification document.",
      "properties": {
        "value": {
          "$ref": "#/definitions/DocumentType_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "DocumentType_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "DocumentType_Enum"
      },
      "description": "Defines the specific type of identification or certification document.",
      "type": "string",
      "enum": [
        "NaturalizationCertificate",
        "PassportCard",
        "CrewMemberCertificate",
        "AirNexusCard",
        "MerchantMariner",
        "Non-standard",
        "KnownTravelerNumber",
        "RedressNumber",
        "PermanentResidentCard",
        "PilotsLicense",
        "RefugeeTravelDocument",
        "BorderCrossingCard",
        "VerhicleRegistrationNumber",
        "TaxexEmptionNumber",
        "InsurancePolicyNumber",
        "AlienRegistrationNumber",
        "VaccinationCertificate",
        "NationalIdentityDocument",
        "DriversLicense",
        "MilitaryIdentification",
        "Passport",
        "Visa",
        "Other_"
      ]
    },
    "DurationUnit_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "DurationUnit_Enum"
      },
      "description": "Defines the \u0027Units\u0027 that can be applied to Stay restrictions.",
      "properties": {
        "value": {
          "$ref": "#/definitions/DurationUnit_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "DurationUnit_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "DurationUnit_Enum"
      },
      "description": "Defines the \u0027Units\u0027 that can be applied to Stay restrictions.",
      "type": "string",
      "enum": [
        "SUN",
        "SAT",
        "FRI",
        "THU",
        "WED",
        "TUES",
        "MON",
        "Months",
        "Days",
        "Hours",
        "Minutes",
        "Other_"
      ]
    },
    "BedType_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "BedType_Enum"
      },
      "description": "The type(s) of sleeping option(s) in a guest accommodation.",
      "properties": {
        "value": {
          "$ref": "#/definitions/BedType_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "BedType_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "BedType_Enum"
      },
      "description": "The type(s) of sleeping option(s) in a guest accommodation.",
      "type": "string",
      "enum": [
        "Dorm bed",
        "Double/full",
        "Futon",
        "King",
        "Murphy bed",
        "Queen",
        "Run of the house",
        "Sofa bed",
        "Tatami mats",
        "Twin/single",
        "Water bed",
        "Other_"
      ]
    },
    "DisabilityFeature_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "DisabilityFeature_Enum"
      },
      "description": "Specifies information about a facility, amenity or service that is relevant to people with a disability.",
      "properties": {
        "value": {
          "$ref": "#/definitions/DisabilityFeature_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "DisabilityFeature_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "DisabilityFeature_Enum"
      },
      "description": "Specifies information about a facility, amenity or service that is relevant to people with a disability.",
      "type": "string",
      "enum": [
        "Accessibility to goods and services",
        "Accessible baths",
        "Accessible entrance",
        "Accessible parking",
        "Accessible platform lifts available",
        "Accessible rooms",
        "Accessible self parking available",
        "Accessible van parking",
        "Accommodations have bath in bedroom",
        "Adapted room doors",
        "Adjustable height hand-held shower wand",
        "Americans with Disabilities Act (ADA) compliance",
        "Assistive listening devices for meetings upon request",
        "Audible emergency alarm for sight impaired guest",
        "Bathroom doors in inches",
        "Bathroom doors open outwards",
        "Bathroom vanity in guest rooms for wheelchair user\u0027s height",
        "Bathtub grab bars",
        "Bathtub seat",
        "Bed types of wheelchair accessible rooms",
        "Bedroom wheelchair access",
        "Benches in locker rooms.",
        "Braille signage provided",
        "Braille/large print literature",
        "Business center  is wheelchair accessible",
        "Closed caption TV",
        "Closet rods in guest rooms for disabled person height",
        "Complementary accessible transportation with advanced notice",
        "Complies with Local/State/Federal laws for disabled",
        "Concierge desk is wheelchair accessible",
        "Describe in detail how your kitchen is accessible.",
        "Does hotel have accessible parking?",
        "Door width in inches",
        "Drinking fountains accessible",
        "Elevator access to all levels",
        "Elevator near accessible rooms",
        "Elevators equipped for accessibility",
        "Elevators have Braille Instructions",
        "Emergency cord/button system in bathroom",
        "Emergency cord/button system in bedroom",
        "Emergency exit signs in Braille",
        "Emergency info in Braille",
        "Emergency instructions in pictorial form",
        "Emergeny procedures for people with disabilites",
        "Exercise facility is wheelchair accessible",
        "Facilities for people with hearing impairment only",
        "Facilities for people with vision impairment only",
        "Feather free bedding/pillows available",
        "Flashing door knocker available",
        "Flat terrain between parking and entrance",
        "Food service lines accessible",
        "Grab bars in bathroom",
        "Guest rooms and access routes are accessible",
        "Hearing impaired services",
        "Hearing induction loop system installed",
        "Height from ground of deadbolt in guest room",
        "Height from ground of elevator external buttons",
        "Height from ground of elevator internal buttons",
        "Height from ground of elevator internal handrails",
        "Height from ground of guest bed including mattress",
        "Height from ground of thermostat in guest room",
        "Height from ground to light switches in bathroom",
        "Height from ground to light switches in guest room",
        "Height from ground to peephole in guest room door",
        "Height of bathroom basin",
        "Height of bathroom toilet seat",
        "Height of controls at highest operable part for bath",
        "Height of controls at highest operable part for roll-in shower",
        "Height of deadbolt in guest room (in feet)",
        "Height of deadbolt in guest room (in Inches)",
        "Height of light switches in guest rooms (feet)",
        "Height of light switches in guest rooms (inches)",
        "Height of non-slip handrails adjacent to bath",
        "Height of non-slip handrails adjacent to bathroom toilet",
        "Height of non-slip handrails in shower area",
        "Height of peephole in guest room (in feet)",
        "Height of peephole in guest room (in inches)",
        "Height of thermostat in guest room (in feet)",
        "Height of thermostat in guest room (in inches)",
        "Hotel entrance is accessible",
        "Hotel restaurant is wheelchair accessible",
        "Impairment aids available",
        "Length/depth of clear floor space in front of bath",
        "Length/depth of clear floor space in front of guest bathroom toilet",
        "Lever handles on guest room doors",
        "Light switches in guest rooms for wheelchair user\u0027s height",
        "List available room types for disabled persons- 8 fields",
        "Locker rooms accessible",
        "Lower level seating required",
        "Lowered electrical outlets",
        "Lowered night guards on guest room doors",
        "Number of accessible meeting rooms",
        "Number of accessible rooms with standard tub",
        "Number of each room type equipped for disabled persons- 8 fields",
        "Number of roll-in showers available",
        "Number of rooms with Braille",
        "Number of rooms with wheelchair accessible showers",
        "Number of wheelchair accessible rooms",
        "Other services for persons with disabilities",
        "Passenger has meet and assist requirement",
        "Passenger has oxygen equipment",
        "Pool is wheelchair accessible",
        "Portable bathtub seats",
        "Public areas wheelchair accessible",
        "Public telephones accessible",
        "Raised toilet seat with grab bars",
        "Ramp access",
        "Registration desk is wheelchair accessible",
        "Restaurant/bar menus available in 14pt print",
        "Restaurant/bar menus available in Braille",
        "Restroom facilities accessible",
        "Roll-in shower area with bathroom seat",
        "Roll-in shower available",
        "Route from accessible public entrance to business center is accessible",
        "Route from accessible public entrance to exercise facility is accessible",
        "Route from accessible public entrance to meeting rooms is accessible",
        "Route from accessible public entrance to pool is accessible",
        "Route from accessible public entrance to registration area is accessible",
        "Route from accessible public entrance to restaurant is accessible",
        "Route from accessible public entrance to spa is accessible",
        "Safety bars in shower",
        "Sales and service counters accessible",
        "Service animals allowed on property for people with disabilities",
        "Service dogs allowed",
        "Special needs menus",
        "Staff proficient in sign language",
        "Staff trained in service to disabled guests",
        "Steps/staircases have color markings",
        "Steps/staircases have handrails",
        "Subtitles/closed captions available on TV",
        "Tactile/14pt print signage throughout hotel",
        "Telephone for hearing impaired",
        "Television amplifier",
        "Toilet seat in guest rooms for disabled person",
        "TTY/TTD compatible",
        "Van accessible parking in self parking",
        "Viabrating alarm available",
        "Vibrating pillows available",
        "Visual emergency alarm for hearing impaired guest",
        "Walk-in shower",
        "What room types have wheel-in showers? (free form stringbox)",
        "Wheelchair accessible elevators",
        "Wheelchair lift required",
        "Wheelchair, passenger has own chair, buses",
        "Wheelchair, passenger has own chair, trains",
        "Wheelchair, passenger requires station wheelchair",
        "Wheelchairs available",
        "Which floors have accessible rooms",
        "Wide corridors",
        "Wide entrance",
        "Wide restaurant entrance",
        "Width/diameter of clear floor space at main hotel entrance",
        "Width/diameter of clear floor space at main restaurant entrance",
        "Width/diameter of clear floor space in front of bath",
        "Width/diameter of clear floor space in front of guest bathroom toilet",
        "Width/diameter of clear opening space at bathroom door",
        "Width/diameter of clear opening space at bedroom door",
        "Width/diameter of elevator clear door opening space",
        "Width/diameter of main corridors",
        "Width/diameter of wheelchair turning space in bathroom",
        "Width/diameter of wheelchair turning space in bedroom",
        "Width/diameter of wheelchair turning space in lobby/reception area",
        "Other_"
      ]
    },
    "RecreationService_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "RecreationService_Enum"
      },
      "description": "Describes the recreational activities available to a guest which may or may not be operated by or located at the hotel.",
      "properties": {
        "value": {
          "$ref": "#/definitions/RecreationService_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "RecreationService_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "RecreationService_Enum"
      },
      "description": "Describes the recreational activities available to a guest which may or may not be operated by or located at the hotel.",
      "type": "string",
      "enum": [
        "Animal watching",
        "Antique shopping",
        "Archery",
        "Badminton court",
        "Baseball diamond",
        "Basketball court",
        "Beach",
        "Bike rental",
        "Bike trail",
        "Billiards",
        "Bird watching",
        "Boat tours",
        "Boating",
        "Bocce court",
        "Bowling alley",
        "Boxing",
        "Camping",
        "Canoeing",
        "Children\u0027s pool",
        "Children\u0027s program",
        "Children\u0027s program, onsite",
        "Cricket pitch",
        "Cross country skiing",
        "Dancing",
        "Dart board",
        "Direct access to a beach",
        "Diving",
        "Dog racing",
        "Downhill skiing",
        "Driving range",
        "Extensive health club",
        "Fishing",
        "Fitness center",
        "Fly fishing",
        "Football field",
        "Gambling",
        "Garden",
        "Golf",
        "Golf location (onsite/nearby)",
        "Health club",
        "Helicopter/airplane sightseeing",
        "Hiking trail",
        "Horse racing",
        "Horseback riding",
        "Hot tub",
        "Hunting",
        "Ice skating",
        "Indoor pool",
        "Indoor tennis courts",
        "Indoor/outdoor connecting pool",
        "Jet-ski",
        "Jogging trail",
        "Karaoke",
        "Kayaking",
        "Kids beach club",
        "Kids equestrian club",
        "Kids golf academy",
        "Lake",
        "Limited health club",
        "Massage services",
        "Miniature golf",
        "Mountain biking trail",
        "Mountain climbing",
        "Museum/gallery",
        "Nature preserve trail",
        "Nightclub",
        "Ocean",
        "Outdoor pool",
        "Outdoor tennis courts",
        "Outlet shopping",
        "Paddle court",
        "Parasailing",
        "Playground",
        "Polo",
        "Pool",
        "Putt putt golf",
        "Racquetball court",
        "River",
        "River rafting",
        "Rock climbing",
        "Safari",
        "Sailing",
        "Sauna",
        "Scuba diving",
        "Shopping",
        "Sightseeing tours",
        "Skating rink",
        "Skeet shooting",
        "Ski in/out facilities",
        "Skydiving",
        "Snorkeling",
        "Snow boarding",
        "Snow mobiling",
        "Snow skiing",
        "Soccer field",
        "Solarium",
        "Spa facility",
        "Sports court",
        "Sports events",
        "Squash court",
        "Steam bath",
        "Sun tanning bed",
        "Sunbathing",
        "Surfing",
        "Table tennis",
        "Teen programs",
        "Tennis court",
        "Tennis professional",
        "Theatre",
        "Tubing",
        "Upscale shopping",
        "Velodrome",
        "Volleyball",
        "Walking track",
        "Water activities",
        "Water-skiing",
        "Weightlifting",
        "Whirlpool",
        "Windsurfing",
        "Wine tasting",
        "Winter sports",
        "Wrestling",
        "Other_"
      ]
    },
    "SecurityFeature_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "SecurityFeature_Enum"
      },
      "description": "Identifies security features of the services, meeting rooms, guest rooms, and restaurants of a property.",
      "properties": {
        "value": {
          "$ref": "#/definitions/SecurityFeature_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "SecurityFeature_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "SecurityFeature_Enum"
      },
      "description": "Identifies security features of the services, meeting rooms, guest rooms, and restaurants of a property.",
      "type": "string",
      "enum": [
        "2nd lock on guest doors",
        "Audible alarm smoke detectors in guest rooms",
        "Audible alarms in hallways",
        "Audible alarms in public areas",
        "Auto link to fire station",
        "Automated External Defibrillator (AED) on-site",
        "Building meets all current local, state and country building codes",
        "Carbon monoxide detector",
        "Complies with Local/State/Federal fire laws",
        "Connecting doors have deadbolts",
        "Dead bolts on guest room doors",
        "Electronic room key",
        "Elevator auto recall",
        "Emergency back-up generators",
        "Emergency evacuation plan",
        "Emergency exits on each floor",
        "Emergency info in room",
        "Emergency lighting",
        "Evacuation drills",
        "Exterior doors (except lobby entrance) require key access at night",
        "FEMA approved",
        "Fire extinguishers",
        "Fire extinguishers in hallways",
        "Fire extinguishers in public areas",
        "First aid available",
        "Guest room doors self-closing",
        "Hard wired smoke detectors",
        "Health club facilities (pool/gym) require key access for entrance",
        "Hours security",
        "If no 24 hour security, what are the hours?",
        "Lighted parking area",
        "Multiple exits on each floor",
        "Patrolled parking area",
        "Private security available",
        "Property has elevators",
        "Public address system",
        "Room access through exterior corridor",
        "Room access through interior corridor",
        "Room accessible through balcony sliding glass doors",
        "Room windows open",
        "Safety chains on guest doors",
        "Secondary locks on room windows",
        "Secondary locks on sliding glass doors",
        "Secured floors",
        "Security",
        "Security 24 hours/day",
        "Security escorts available on request",
        "Smoke detector in guest rooms",
        "Smoke detector in hallways",
        "Smoke detector in public areas",
        "Sprinklers in guest rooms",
        "Sprinklers in hallways",
        "Sprinklers in public areas",
        "Staff Red Cross certified in CPR",
        "Staff trained in Automated External Defibrillator (AED) usage",
        "Staff trained in CPR",
        "Staff trained in duplicate key issue",
        "Staff trained in first aid",
        "Swingbolt lock",
        "Ventilated stair wells",
        "Video cameras at entrance",
        "Video cameras in public areas",
        "Video surveillance monitored 24 hrs a day",
        "Video surveillance of parking",
        "Video surveillance recorded 24 hrs a day",
        "Viewports in guest room doors",
        "VIP Security",
        "Visual alarm in guest rooms",
        "Visual alarms in hallways",
        "Visual alarms in public areas",
        "Other_"
      ]
    },
    "Status_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "Status_Enum"
      },
      "description": "The status condition.",
      "properties": {
        "value": {
          "$ref": "#/definitions/Status_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "Status_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "Status_Enum"
      },
      "description": "The status condition.",
      "type": "string",
      "enum": [
        "Complete",
        "Incomplete",
        "Not processed",
        "Unknown",
        "Other_"
      ]
    },
    "ErrorWarningType_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "ErrorWarningType_Enum"
      },
      "description": "Tthe category of error or warning.",
      "properties": {
        "value": {
          "$ref": "#/definitions/ErrorWarningType_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "ErrorWarningType_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "ErrorWarningType_Enum"
      },
      "description": "Tthe category of error or warning.",
      "type": "string",
      "enum": [
        "Advisory",
        "Application error",
        "Authentication",
        "Authentication timeout",
        "Authorization",
        "Business rule",
        "No implementation",
        "Processing exception",
        "Protocol violation",
        "Required field missing",
        "Unknown",
        "Other_"
      ]
    },
    "PhoneLocation_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "PhoneLocation_Enum"
      },
      "description": "Where the phone is located.",
      "properties": {
        "value": {
          "$ref": "#/definitions/PhoneLocation_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "PhoneLocation_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "PhoneLocation_Enum"
      },
      "description": "Where the phone is located.",
      "type": "string",
      "enum": [
        "Brand reservations office",
        "Central reservations office",
        "Home",
        "Managing company",
        "Mobile",
        "Office",
        "Property direct",
        "Property reservation Office",
        "Sales office",
        "Other_"
      ]
    },
    "PhoneUseType_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "PhoneUseType_Enum"
      },
      "properties": {
        "value": {
          "$ref": "#/definitions/PhoneUseType_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "PhoneUseType_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "PhoneUseType_Enum"
      },
      "type": "string",
      "enum": [
        "Contact",
        "Daytime contact",
        "Emergency contact",
        "Evening contact",
        "Guest use",
        "Mobile",
        "Pickup contact",
        "Toll free number",
        "Travel arranger",
        "Other_"
      ]
    },
    "PhoneTechType_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "PhoneTechType_Enum"
      },
      "description": "Defines the technology associated with this phone number.",
      "properties": {
        "value": {
          "$ref": "#/definitions/PhoneTechType_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "PhoneTechType_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "PhoneTechType_Enum"
      },
      "description": "Defines the technology associated with this phone number.",
      "type": "string",
      "enum": [
        "Voice",
        "Fax",
        "Pager",
        "TTY",
        "Other_"
      ]
    },
    "TimeUnit_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationClosed",
        "EntityName": "TimeUnit_Enum"
      },
      "type": "string",
      "enum": [
        "Day",
        "Full duration",
        "Hour",
        "Minute",
        "Month",
        "Second",
        "Week",
        "Year"
      ]
    },
    "CommunicationLocation_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "CommunicationLocation_Enum"
      },
      "description": "Specifies a location for communication.",
      "properties": {
        "value": {
          "$ref": "#/definitions/CommunicationLocation_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "CommunicationLocation_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "CommunicationLocation_Enum"
      },
      "description": "Specifies a location for communication.",
      "type": "string",
      "enum": [
        "Business",
        "Destination",
        "Home",
        "Other_"
      ]
    },
    "AddressUse_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "AddressUse_Enum"
      },
      "description": "Describes how an address is to be used.",
      "properties": {
        "value": {
          "$ref": "#/definitions/AddressUse_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "AddressUse_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "AddressUse_Enum"
      },
      "description": "Describes how an address is to be used.",
      "type": "string",
      "enum": [
        "Billing",
        "Chain",
        "Contact",
        "Credit card",
        "Delivery",
        "Deposit",
        "Mailing",
        "Physical",
        "Pre-opening office",
        "Other_"
      ]
    },
    "BookingChannel_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "BookingChannel_Enum"
      },
      "description": "Specifies a type of booking channel.",
      "properties": {
        "value": {
          "$ref": "#/definitions/BookingChannel_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "BookingChannel_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "BookingChannel_Enum"
      },
      "description": "Specifies a type of booking channel.",
      "type": "string",
      "enum": [
        "Agent",
        "Alternative distribution system (ADS)",
        "Central reservation system (CRS)",
        "Global distribution system (GDS)",
        "Internet",
        "Kiosk",
        "Property management system (PMS)",
        "Sales and catering system (SCS)",
        "Tour operator system (TOS)",
        "Other_"
      ]
    },
    "UnitOfMeasure_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationClosed",
        "EntityName": "UnitOfMeasure_Enum"
      },
      "description": "The unit of measure in a code format. Refer to OpenTravel Code List Unit of Measure Code (UOM).",
      "type": "string",
      "enum": [
        "Miles",
        "Kilometers",
        "Meters",
        "Millimeters",
        "Centimeters",
        "Yards",
        "Feet",
        "Inches",
        "Pixels",
        "Block",
        "Megabytes",
        "Gigabytes",
        "Square feet",
        "Square meters",
        "Pounds",
        "Kilograms",
        "Square inch",
        "Square yard",
        "Acre",
        "Square millimeter",
        "Square centimeter",
        "Hectare",
        "Ounce",
        "Gram",
        "Gallons",
        "Liters",
        "Kilowatts",
        "Cubic meters"
      ]
    },
    "EmailAddressType_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "EmailAddressType_Enum"
      },
      "description": "Specifies a type of email address.",
      "properties": {
        "value": {
          "$ref": "#/definitions/EmailAddressType_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "EmailAddressType_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "EmailAddressType_Enum"
      },
      "description": "Specifies a type of email address.",
      "type": "string",
      "enum": [
        "Business",
        "Listserve",
        "Managing company",
        "Personal",
        "Property",
        "Reservation office",
        "Sales office",
        "Other_"
      ]
    },
    "PositionAccuracy_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationClosed",
        "EntityName": "PositionAccuracy_Enum"
      },
      "description": "Specifies the level of accuracy for the positon.",
      "type": "string",
      "enum": [
        "Zip9Code",
        "Zip7Code",
        "Zip5Code",
        "Street",
        "State",
        "Property",
        "Intersection",
        "Exact",
        "County",
        "Country",
        "City",
        "Block"
      ]
    },
    "DayOfWeek_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationClosed",
        "EntityName": "DayOfWeek_Enum"
      },
      "description": "Day of the Week types.",
      "type": "string",
      "enum": [
        "Monday",
        "Tuesday",
        "Wednesday",
        "Thursday",
        "Friday",
        "Saturday",
        "Sunday"
      ]
    },
    "Transportation_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "Transportation_Enum"
      },
      "description": "Type of tranportation: Air, Rail, Bus, Boat, Private Auto, Other.",
      "properties": {
        "value": {
          "$ref": "#/definitions/Transportation_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "Transportation_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "Transportation_Enum"
      },
      "description": "Type of tranportation: Air, Rail, Bus, Boat, Private Auto, Other.",
      "type": "string",
      "enum": [
        "Bicycle",
        "Boat",
        "Bus",
        "Cable car",
        "Car",
        "Carriage",
        "Courtesy car",
        "Helicopter",
        "Limousine",
        "Metro",
        "Monorail",
        "Motorbike",
        "Pack animal",
        "Plane",
        "Rental car",
        "Rickshaw",
        "Shuttle",
        "Subway",
        "Sedan chair",
        "Taxi",
        "Train",
        "Trolley",
        "Tube",
        "Walk",
        "Water taxi",
        "Express train",
        "Public",
        "Ferry",
        "Other_"
      ]
    },
    "ToFrom_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationClosed",
        "EntityName": "ToFrom_Enum"
      },
      "description": "Used to indicate whether the context is to a facility or from a facility.",
      "type": "string",
      "enum": [
        "ToFacility",
        "FromFacility"
      ]
    },
    "ChargeUnit_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "ChargeUnit_Enum"
      },
      "description": "Source: Charge Type (CHG) OpenTravel codelist.",
      "properties": {
        "value": {
          "$ref": "#/definitions/ChargeUnit_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "ChargeUnit_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "ChargeUnit_Enum"
      },
      "description": "Source: Charge Type (CHG) OpenTravel codelist.",
      "type": "string",
      "enum": [
        "Per unit",
        "Per order",
        "Per tray",
        "Per dozen",
        "Per gallon",
        "Round trip",
        "Per room",
        "Per item",
        "Per rental",
        "Per person per night",
        "Per person per stay",
        "Per room per night",
        "Per room per stay",
        "Weekly",
        "Per occurance",
        "Half day",
        "Hourly",
        "Daily",
        "Per function",
        "Per minute",
        "First use",
        "Per person",
        "Unit",
        "Tray",
        "Stay",
        "Room",
        "Reservation/Booking",
        "Rental",
        "OverMinuteCharge",
        "Order",
        "OneWay",
        "OneTimeUse",
        "MinimumCharge",
        "MaximumCharge",
        "Item",
        "Gallon",
        "Complimentary",
        "AdditionsPerStay",
        "Other_"
      ]
    },
    "SegmentCategory_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "SegmentCategory_Enum"
      },
      "description": "Describes the segment type.",
      "properties": {
        "value": {
          "$ref": "#/definitions/SegmentCategory_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "SegmentCategory_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "SegmentCategory_Enum"
      },
      "description": "Describes the segment type.",
      "type": "string",
      "enum": [
        "Budget",
        "Deluxe",
        "Economy",
        "First Class",
        "Luxury",
        "Moderate",
        "Tourist",
        "Upscale",
        "Standard",
        "Midscale",
        "Quality",
        "Midscale without F\u0026B",
        "Upper upscale",
        "Other_"
      ]
    },
    "ReferencePoint_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "ReferencePoint_Enum"
      },
      "description": "Specifies a point of reference.",
      "properties": {
        "value": {
          "$ref": "#/definitions/ReferencePoint_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "ReferencePoint_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "ReferencePoint_Enum"
      },
      "description": "Specifies a point of reference.",
      "type": "string",
      "enum": [
        "Airport",
        "Amusement park",
        "Arena",
        "Bar",
        "Bay",
        "Beach",
        "Bus station",
        "City center",
        "Church",
        "Corporation",
        "Educational Institution",
        "Ferry station",
        "Financial district",
        "Financial institution",
        "Lake",
        "Landmark",
        "Library",
        "Marina",
        "Market",
        "Medical facility",
        "Metro/subway station",
        "Monument",
        "Museum",
        "Park",
        "Racetrack",
        "Restaurant",
        "River",
        "Shopping center",
        "Sports facility",
        "Synagogue",
        "Train station",
        "Zoo",
        "Other_"
      ]
    },
    "AdditionalDetailType_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "AdditionalDetailType_Enum"
      },
      "description": "Identifies the type of detail being sent.",
      "properties": {
        "value": {
          "$ref": "#/definitions/AdditionalDetailType_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "AdditionalDetailType_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "AdditionalDetailType_Enum"
      },
      "description": "Identifies the type of detail being sent.",
      "type": "string",
      "enum": [
        "Advanced booking information",
        "Amenity information",
        "Areas served",
        "Booking guidelines",
        "Cancellation information",
        "Catering description",
        "Check in check out information",
        "Check-in policy",
        "Check-out policy",
        "Children information",
        "Commission information",
        "Contract/negotiated booking information",
        "Corporate booking information",
        "Cuisine description",
        "Customs information for material",
        "Deposit information",
        "Deposit policy for master account",
        "Deposit policy for reservations",
        "Driving directions",
        "Driving directions from the east",
        "Driving directions from the north",
        "Driving directions from the south",
        "Driving directions from the west",
        "Early checkout description",
        "Express check-in policy",
        "Express check-out policy",
        "Extended stay information",
        "Extra charge information",
        "Extra person information",
        "Facility restrictions",
        "Family plan description",
        "Food and beverage minimums for groups",
        "General meeting planning information",
        "Government booking policy",
        "Group booking information",
        "Group meeting planning information",
        "Guarantee information",
        "Inclusion information",
        "Last room availability description",
        "Late arrival information",
        "Late departure information",
        "Maximum stay information",
        "Meal plan description",
        "Meeting room description",
        "Minimum stay information",
        "Miscellaneous information",
        "Offsite facilities information",
        "Offsite recreational activities information",
        "Offsite services information",
        "Onsite facilities information",
        "Onsite recreational activities information",
        "Onsite services information",
        "Oversold policy description",
        "Package information",
        "Pet policy description",
        "Promotional information",
        "Property description",
        "Property location",
        "Rate description",
        "Rate disclaimer information",
        "Restaurant services",
        "Room decor description",
        "Room information",
        "Room type upgrade description",
        "Seasons",
        "Security information",
        "Service charge information",
        "Special events",
        "Special offers description",
        "Surcharge information",
        "Tax information",
        "Travel industry booking information",
        "Visa/travel requirement information",
        "Other_"
      ]
    },
    "InformationType_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "InformationType_Enum"
      },
      "description": "Identifies the type of information being sent.",
      "properties": {
        "value": {
          "$ref": "#/definitions/InformationType_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "InformationType_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "InformationType_Enum"
      },
      "description": "Identifies the type of information being sent.",
      "type": "string",
      "enum": [
        "Address",
        "Advisory",
        "Alias name",
        "Amenities",
        "Attractions",
        "Awards",
        "Contact",
        "Corporate locations",
        "Description",
        "Descriptive content",
        "Dining",
        "Driving directions",
        "Facilities",
        "Geocodes",
        "Location",
        "Long name",
        "Marketing",
        "Pictures",
        "Policy",
        "Recreation",
        "Safety",
        "Services",
        "Short description",
        "Special instructions",
        "Transportation",
        "Other_"
      ]
    },
    "PictureCategory_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "PictureCategory_Enum"
      },
      "description": "Specifies the category of the mulitmedia item.",
      "properties": {
        "value": {
          "$ref": "#/definitions/PictureCategory_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "PictureCategory_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "PictureCategory_Enum"
      },
      "description": "Specifies the category of the mulitmedia item.",
      "type": "string",
      "enum": [
        "Ballroom",
        "Bar/Lounge",
        "Basics",
        "Beach",
        "Business center",
        "Exterior view",
        "Golf course",
        "Guest room",
        "Guest room amenity",
        "Health club",
        "Hot news",
        "Lobby view",
        "Logo",
        "Map",
        "Meeting room",
        "Miscellaneous",
        "Pool view",
        "Promotional",
        "Property amenity",
        "Recreational facility",
        "Restaurant",
        "Spa",
        "Suite",
        "Other_"
      ]
    },
    "RatePlanType_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "RatePlanType_Enum"
      },
      "description": "Note: Typically used for rate plans that may be published, e.g. have no qualifying criteria, or may be restricted or negotiated, e.g. has qualifying criteria for eligibility and\\/or has been negotiated between parties.",
      "properties": {
        "value": {
          "$ref": "#/definitions/RatePlanType_Enum_Base"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "RatePlanType_Enum_Base": {
      "x-otm-entity": {
        "EntityType": "EnumerationOpen",
        "EntityName": "RatePlanType_Enum"
      },
      "description": "Note: Typically used for rate plans that may be published, e.g. have no qualifying criteria, or may be restricted or negotiated, e.g. has qualifying criteria for eligibility and\\/or has been negotiated between parties.",
      "type": "string",
      "enum": [
        "Other_",
        "Weekly",
        "Weekend",
        "TravelIndustry",
        "TourWholesale",
        "SeniorCitizen",
        "RegularRack",
        "Published",
        "PromotionalPackageTour",
        "Promotional",
        "Package",
        "NonLastRoomAvailable",
        "Net",
        "Negotiated",
        "Multi-DayPackage",
        "Monthly",
        "Military",
        "LastRoomAvailable",
        "Group",
        "Government",
        "FamilyPlan",
        "DistressedInventory",
        "DayRate",
        "Corporate",
        "Convention",
        "Contract",
        "Consortia",
        "ClubConcierge",
        "Association",
        "Other_"
      ]
    },
    "PropertyInfo": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "PropertyInfo"
      },
      "description": "Identifies a property.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "code": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "type": "string",
          "maxLength": 32
        },
        "ExtensionPoint_Summary": {
          "$ref": "#/definitions/ExtensionPoint_Summary"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "Site": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "PropertyInfo"
      },
      "description": "Identifies a property.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "code": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "type": "string",
          "maxLength": 32
        },
        "ExtensionPoint_Summary": {
          "$ref": "#/definitions/ExtensionPoint_Summary"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "PropertyInfoDetail": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "PropertyInfo"
      },
      "description": "Identifies a property.",
      "allOf": [
        {
          "$ref": "#/definitions/PropertyInfo"
        },
        {
          "properties": {
            "name": {
              "description": "Assigned Type: ota2-0400:StringShort",
              "type": "string",
              "maxLength": 128
            },
            "cityCode": {
              "description": "Assigned Type: ota2-0400:StringTiny",
              "type": "string",
              "maxLength": 32
            },
            "chainCode": {
              "description": "Assigned Type: ota2-0400:StringTiny",
              "type": "string",
              "maxLength": 32
            },
            "chainName": {
              "description": "Assigned Type: ota2-0400:StringShort",
              "type": "string",
              "maxLength": 128
            },
            "brandCode": {
              "description": "Assigned Type: ota2-0400:StringTiny",
              "type": "string",
              "maxLength": 32
            },
            "brandName": {
              "description": "Assigned Type: ota2-0400:StringShort",
              "type": "string",
              "maxLength": 128
            },
            "ExtensionPoint_Detail": {
              "$ref": "#/definitions/ExtensionPoint_Detail"
            }
          }
        }
      ]
    },
    "SiteDetail": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "PropertyInfo"
      },
      "description": "Identifies a property.",
      "allOf": [
        {
          "$ref": "#/definitions/PropertyInfo"
        },
        {
          "properties": {
            "name": {
              "description": "Assigned Type: ota2-0400:StringShort",
              "type": "string",
              "maxLength": 128
            },
            "cityCode": {
              "description": "Assigned Type: ota2-0400:StringTiny",
              "type": "string",
              "maxLength": 32
            },
            "chainCode": {
              "description": "Assigned Type: ota2-0400:StringTiny",
              "type": "string",
              "maxLength": 32
            },
            "chainName": {
              "description": "Assigned Type: ota2-0400:StringShort",
              "type": "string",
              "maxLength": 128
            },
            "brandCode": {
              "description": "Assigned Type: ota2-0400:StringTiny",
              "type": "string",
              "maxLength": 32
            },
            "brandName": {
              "description": "Assigned Type: ota2-0400:StringShort",
              "type": "string",
              "maxLength": 128
            },
            "ExtensionPoint_Detail": {
              "$ref": "#/definitions/ExtensionPoint_Detail"
            }
          }
        }
      ]
    },
    "GuestCount": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "GuestCount"
      },
      "description": "Identifies the number of guests for the reservation.",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32"
        },
        "ageQualifyingCode": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "type": "string",
          "maxLength": 32
        },
        "age": {
          "description": "Specifies the specific age of the guest.",
          "type": "integer",
          "format": "int32"
        }
      }
    },
    "FacilityID": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Facility"
      },
      "description": "Describes a facility (e.g. Hotel Facility,Conference Facility, Golf Facility).  A facility must have a single address and a single geolocation.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "objID": {
          "description": "A unique identifier within this document for this object.",
          "type": "string"
        },
        "FacilityRef": {
          "description": "Refers to the obj ID on an object defined elsewhere in the current document.",
          "type": "string"
        },
        "FacilityKey": {
          "description": "Assigned Type: org-0300:FacilityKey",
          "$ref": "#/definitions/FacilityKey"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "Facility": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Facility"
      },
      "description": "Describes a facility (e.g. Hotel Facility,Conference Facility, Golf Facility).  A facility must have a single address and a single geolocation.",
      "allOf": [
        {
          "$ref": "#/definitions/FacilityID"
        },
        {
          "properties": {
            "name": {
              "description": "Assigned Type: ota2-0400:StringShort",
              "type": "string",
              "maxLength": 128
            },
            "Location": {
              "description": "Assigned Type: ota2-0400:Location",
              "$ref": "#/definitions/Location"
            },
            "OperationSchedule": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/OperationSchedule"
              },
              "maxItems": 30
            },
            "MultimediaCollection": {
              "description": "Assigned Type: ota2-0400:MultimediaCollection",
              "$ref": "#/definitions/MultimediaCollection"
            },
            "Rating": {
              "description": "Assigned Type: ota2-0400:Rating",
              "$ref": "#/definitions/Rating"
            },
            "Telephone": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Telephone"
              },
              "maxItems": 5
            },
            "Email": {
              "description": "Assigned Type: ota2-0400:Email",
              "$ref": "#/definitions/Email"
            },
            "Description": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Text"
              },
              "maxItems": 10
            },
            "Property": {
              "description": "Assigned Type: org-0300:Property",
              "$ref": "#/definitions/PropertyID"
            },
            "SiteURL": {
              "description": "Assigned Type: ota2-0400:URL",
              "$ref": "#/definitions/URL"
            },
            "RelativePosition": {
              "description": "Assigned Type: ota2-0400:RelativePosition",
              "$ref": "#/definitions/RelativePosition"
            },
            "AccessibilityFeatures": {
              "description": "Assigned Type: ota2-0400:AccessibilityFeatures",
              "$ref": "#/definitions/AccessibilityFeatures_OTA20400"
            },
            "ExtensionPoint_Summary": {
              "$ref": "#/definitions/ExtensionPoint_Summary"
            }
          }
        }
      ]
    },
    "FacilityMeeting": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Facility"
      },
      "description": "Describes a facility (e.g. Hotel Facility,Conference Facility, Golf Facility).  A facility must have a single address and a single geolocation.",
      "allOf": [
        {
          "$ref": "#/definitions/Facility"
        },
        {
          "properties": {
            "MeetingCenter": {
              "description": "Assigned Type: org-0300:MeetingCenter",
              "$ref": "#/definitions/MeetingCenter"
            },
            "ExtensionPoint_Custom": {
              "$ref": "#/definitions/ExtensionPoint_Custom"
            }
          }
        }
      ]
    },
    "PropertyID": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Property"
      },
      "description": "A property may contain one or more facilities of the same or differing types.  Example:  The property Disney Orlando has many hotels and golf courses on it.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "objID": {
          "description": "A unique identifier within this document for this object.",
          "type": "string"
        },
        "Identifier": {
          "description": "Assigned Type: ota2-0400:Identifier",
          "$ref": "#/definitions/Identifier"
        },
        "PropertyRef": {
          "description": "Refers to the obj ID on an object defined elsewhere in the current document.",
          "type": "string"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "ResortID": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Property"
      },
      "description": "A property may contain one or more facilities of the same or differing types.  Example:  The property Disney Orlando has many hotels and golf courses on it.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "objID": {
          "description": "A unique identifier within this document for this object.",
          "type": "string"
        },
        "Identifier": {
          "description": "Assigned Type: ota2-0400:Identifier",
          "$ref": "#/definitions/Identifier"
        },
        "PropertyRef": {
          "description": "Refers to the obj ID on an object defined elsewhere in the current document.",
          "type": "string"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "Property": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Property"
      },
      "description": "A property may contain one or more facilities of the same or differing types.  Example:  The property Disney Orlando has many hotels and golf courses on it.",
      "allOf": [
        {
          "$ref": "#/definitions/PropertyID"
        },
        {
          "properties": {
            "name": {
              "description": "Assigned Type: ota2-0400:StringShort",
              "type": "string",
              "maxLength": 128
            },
            "companyName": {
              "description": "Assigned Type: ota2-0400:StringShort",
              "type": "string",
              "maxLength": 128
            },
            "Address": {
              "description": "Assigned Type: ota2-0400:Address",
              "$ref": "#/definitions/Address"
            },
            "URL": {
              "description": "The URL for the property.",
              "type": "string"
            },
            "Telephone": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Telephone"
              },
              "maxItems": 5
            },
            "Email": {
              "description": "Assigned Type: ota2-0400:Email",
              "$ref": "#/definitions/Email"
            },
            "MultimediaCollection": {
              "description": "Assigned Type: ota2-0400:MultimediaCollection",
              "$ref": "#/definitions/MultimediaCollection"
            },
            "Rating": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Rating"
              },
              "maxItems": 5
            },
            "ExtensionPoint_Summary": {
              "$ref": "#/definitions/ExtensionPoint_Summary"
            }
          },
          "required": [
            "name"
          ]
        }
      ]
    },
    "Resort": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Property"
      },
      "description": "A property may contain one or more facilities of the same or differing types.  Example:  The property Disney Orlando has many hotels and golf courses on it.",
      "allOf": [
        {
          "$ref": "#/definitions/PropertyID"
        },
        {
          "properties": {
            "name": {
              "description": "Assigned Type: ota2-0400:StringShort",
              "type": "string",
              "maxLength": 128
            },
            "companyName": {
              "description": "Assigned Type: ota2-0400:StringShort",
              "type": "string",
              "maxLength": 128
            },
            "Address": {
              "description": "Assigned Type: ota2-0400:Address",
              "$ref": "#/definitions/Address"
            },
            "URL": {
              "description": "The URL for the property.",
              "type": "string"
            },
            "Telephone": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Telephone"
              },
              "maxItems": 5
            },
            "Email": {
              "description": "Assigned Type: ota2-0400:Email",
              "$ref": "#/definitions/Email"
            },
            "MultimediaCollection": {
              "description": "Assigned Type: ota2-0400:MultimediaCollection",
              "$ref": "#/definitions/MultimediaCollection"
            },
            "Rating": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Rating"
              },
              "maxItems": 5
            },
            "ExtensionPoint_Summary": {
              "$ref": "#/definitions/ExtensionPoint_Summary"
            }
          },
          "required": [
            "name"
          ]
        }
      ]
    },
    "PropertyDetail": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Property"
      },
      "description": "A property may contain one or more facilities of the same or differing types.  Example:  The property Disney Orlando has many hotels and golf courses on it.",
      "allOf": [
        {
          "$ref": "#/definitions/Property"
        },
        {
          "properties": {
            "Facility": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/FacilityID"
              },
              "maxItems": 1000,
              "minItems": 1
            },
            "ExtensionPoint_Detail": {
              "$ref": "#/definitions/ExtensionPoint_Detail"
            }
          },
          "required": [
            "Facility"
          ]
        }
      ]
    },
    "ResortDetail": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Property"
      },
      "description": "A property may contain one or more facilities of the same or differing types.  Example:  The property Disney Orlando has many hotels and golf courses on it.",
      "allOf": [
        {
          "$ref": "#/definitions/Property"
        },
        {
          "properties": {
            "Facility": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/FacilityID"
              },
              "maxItems": 1000,
              "minItems": 1
            },
            "ExtensionPoint_Detail": {
              "$ref": "#/definitions/ExtensionPoint_Detail"
            }
          },
          "required": [
            "Facility"
          ]
        }
      ]
    },
    "MeetingCenter": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "MeetingCenter"
      },
      "description": "Meeting center details for a facility.",
      "properties": {
        "meetingRoomCount": {
          "description": "Assigned Type: ota2-0400:NonNegativeInteger",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Changed type from {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}nonNegativeInteger.",
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            },
            "examples": [
              {
                "context": "org",
                "value": "15"
              }
            ]
          },
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "largestSeatingCapacity": {
          "description": "The largest seating capacity available in the largest meeting room - generally this is for theatre-style room setup.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Changed type from {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}nonNegativeInteger.",
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            },
            "examples": [
              {
                "context": "org",
                "value": "200"
              }
            ]
          },
          "type": "integer",
          "format": "int32"
        },
        "largestRoomSpace": {
          "description": "The amount of room space for the largest unique meeting room at the facility.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Changed type from {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}nonNegativeInteger.",
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            },
            "examples": [
              {
                "context": "org",
                "value": "2000 sq ft"
              }
            ]
          },
          "type": "string"
        },
        "unitOfMeasureCode": {
          "description": "Assigned Type: ota2-0400:OTA_Code",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
              ]
            }
          },
          "type": "string",
          "pattern": "[0-9A-Z]{1,4}(\\.[A-Z]{3}(\\.X){0,1}){0,1}"
        },
        "meetingRoomCode": {
          "description": "Assigned Type: ota2-0400:OTA_Code",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
              ]
            }
          },
          "type": "string",
          "pattern": "[0-9A-Z]{1,4}(\\.[A-Z]{3}(\\.X){0,1}){0,1}"
        }
      }
    },
    "BusinessService": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "BusinessService"
      },
      "description": "Name of the business service.",
      "properties": {
        "businessServiceCode": {
          "description": "Assigned Type: ota2-0400:OTA_Code",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
              ]
            }
          },
          "type": "string",
          "pattern": "[0-9A-Z]{1,4}(\\.[A-Z]{3}(\\.X){0,1}){0,1}"
        }
      }
    },
    "FacilityKey": {
      "x-otm-entity": {
        "EntityType": "ChoiceObject",
        "EntityName": "FacilityKey"
      },
      "description": "Allows for a facility to be identified by and Identifier element or other elements\\/attributes that are appropriate for the specific type of facility.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "ExtensionPoint_Shared": {
          "$ref": "#/definitions/ExtensionPoint_Shared"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "FacilityKeyIdentifier": {
      "x-otm-entity": {
        "EntityType": "ChoiceObject",
        "EntityName": "FacilityKey"
      },
      "description": "Allows for a facility to be identified by and Identifier element or other elements\\/attributes that are appropriate for the specific type of facility.",
      "allOf": [
        {
          "$ref": "#/definitions/FacilityKey"
        },
        {
          "properties": {
            "Identifier": {
              "description": "Assigned Type: ota2-0400:Identifier",
              "$ref": "#/definitions/Identifier"
            },
            "ExtensionPoint": {
              "$ref": "#/definitions/ExtensionPoint"
            }
          }
        }
      ]
    },
    "HotelDetails": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "HotelDetails"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "supplierIntegrationLevel": {
          "description": "Assigned Type: ota2-0400:NonNegativeInteger",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Changed type from {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}nonNegativeInteger.",
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            },
            "examples": [
              {
                "context": "orghs",
                "value": "1"
              }
            ]
          },
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "maxGroupRoomQuantity": {
          "description": "Assigned Type: ota2-0400:NonNegativeInteger",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Changed type from {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}nonNegativeInteger.",
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            }
          },
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "currencyCode": {
          "description": "Assigned Type: ota2-0400:CurrencyCode_ISO4217",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}AlphaLength3"
              ]
            },
            "examples": [
              {
                "context": "orghs",
                "value": "usd"
              }
            ]
          },
          "type": "string",
          "pattern": "[a-zA-Z]{3}"
        },
        "hotelCodeContext": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "examples": [
              {
                "context": "orghs",
                "value": "Sabre"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "tTICode": {
          "description": "Note:   This code is maintained by the Travel Technology Initiative (TTI) and provides a unique way to identify a property across a multiplicity of channels, service providers, tour companies, representation companies and third parties involved in the booking, administration and fulfillment of travel within the hospitality industry. For more information: http:\\/\\/www.tti.org\\/tticodes.html.",
          "type": "integer",
          "format": "int32"
        },
        "Recreation": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Recreation"
          }
        },
        "BusinessService": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/BusinessService"
          }
        },
        "Policy": {
          "description": "Assigned Type: orghs-0300:HotelPolicy",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}Policy"
              ]
            }
          },
          "$ref": "#/definitions/HotelPolicy"
        },
        "MeetingCenter": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/MeetingCenter"
          }
        },
        "Amenity": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Amenity"
          }
        },
        "Ancillary": {
          "description": "Assigned Type: ota2-0400:Ancillary_Summary",
          "$ref": "#/definitions/Ancillary"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "HotelPolicy": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "HotelPolicy"
      },
      "properties": {
        "checkInTime": {
          "description": "The checkin time required by this hotel for a room stay.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}time"
              ]
            },
            "equivalents": [
              {
                "context": "orghs",
                "value": ""
              }
            ],
            "examples": [
              {
                "context": "orghs",
                "value": "16:00:00"
              }
            ]
          },
          "type": "string"
        },
        "checkOutTime": {
          "description": "The checkout time required by this hotel for a room stay.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}time"
              ]
            },
            "examples": [
              {
                "context": "orghs",
                "value": "12:00:00"
              }
            ]
          },
          "type": "string"
        }
      }
    },
    "SecurityFeatures": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "SecurityFeatures"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "SecurityFeature": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/SecurityFeature_Enum"
          },
          "maxItems": 100
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "FeaturesAccessibility": {
      "x-otm-entity": {
        "EntityType": "ChoiceObject",
        "EntityName": "Features"
      },
      "allOf": [
        {
          "$ref": "#/definitions/Features"
        },
        {
          "properties": {
            "AccessibilityFeatures": {
              "description": "Assigned Type: orghs-0300:AccessibilityFeatures",
              "$ref": "#/definitions/AccessibilityFeatures_ORGHS0300"
            },
            "ExtensionPoint": {
              "$ref": "#/definitions/ExtensionPoint"
            }
          }
        }
      ]
    },
    "FeaturesSecurity": {
      "x-otm-entity": {
        "EntityType": "ChoiceObject",
        "EntityName": "Features"
      },
      "allOf": [
        {
          "$ref": "#/definitions/Features"
        },
        {
          "properties": {
            "SecurityFeatures": {
              "description": "Assigned Type: orghs-0300:SecurityFeatures_Summary",
              "$ref": "#/definitions/SecurityFeatures"
            },
            "ExtensionPoint": {
              "$ref": "#/definitions/ExtensionPoint"
            }
          }
        }
      ]
    },
    "AccessibilityFeatures_ORGHS0300": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "AccessibilityFeatures"
      },
      "description": "Describes accessibility featrues.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "AccessibilityFeatures": {
          "description": "Assigned Type: ota2-0300:DisabilityFeature_Enum",
          "$ref": "#/definitions/DisabilityFeature_Enum"
        },
        "ExtensionPoint_Summary": {
          "$ref": "#/definitions/ExtensionPoint_Summary"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "AccessibilityFeaturesDetail": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "AccessibilityFeatures"
      },
      "description": "Describes accessibility featrues.",
      "allOf": [
        {
          "$ref": "#/definitions/AccessibilityFeatures_OTA20400"
        },
        {
          "properties": {
            "Description": {
              "description": "Assigned Type: ota2-0400:Text",
              "$ref": "#/definitions/Text"
            },
            "ExtensionPoint_Detail": {
              "$ref": "#/definitions/ExtensionPoint_Detail"
            }
          }
        }
      ]
    },
    "DetailedHotelSearchCriteria": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "DetailedHotelSearchCriteria"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "hotelCodeContext": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to32"
              ]
            },
            "examples": [
              {
                "context": "orghs",
                "value": "Sabre"
              }
            ]
          },
          "type": "string",
          "maxLength": 32
        },
        "tTIcode": {
          "description": "Note:   This code is maintained by the Travel Technology Initiative (TTI) and provides a unique way to identify a property across a multiplicity of channels, service providers, tour companies, representation companies and third parties involved in the booking, administration and fulfillment of travel within the hospitality industry. For more information: http:\\/\\/www.tti.org\\/tticodes.html",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}positiveInteger"
              ]
            }
          },
          "type": "integer",
          "format": "int32"
        },
        "Features": {
          "description": "Assigned Type: ota2-0400:Features",
          "$ref": "#/definitions/Features"
        },
        "BedType": {
          "description": "Assigned Type: ota2-0300:BedType_Enum",
          "$ref": "#/definitions/BedType_Enum"
        },
        "HotelAmenity": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Code"
          },
          "maxItems": 100
        },
        "RoomAmenities": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Code"
          },
          "maxItems": 100
        },
        "Rating": {
          "description": "The minimum hotel rating value of the hotels to be returned (e.g. only return hotels with a 3.5 rating or higher).",
          "type": "number",
          "format": "float",
          "maximum": 5,
          "exclusiveMaximum": false,
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "petsAllowedInd": {
          "description": "When true, pets are allowed at the facility.",
          "type": "boolean"
        },
        "smokingRoomsInd": {
          "description": "When true, this hotel facility offers smoking rooms.",
          "type": "boolean"
        },
        "aDACompliantInd": {
          "description": "When true, this hotel facility is ADA compliant.",
          "type": "boolean"
        },
        "exactMatchInd": {
          "description": "When true, only properties\\/rate plans that exactly match the search criteria should be returned.",
          "type": "boolean"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "FacilityHotel": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Facility"
      },
      "description": "Describes a facility (e.g. Hotel Facility,Conference Facility, Golf Facility).  A facility must have a single address and a single geolocation.",
      "allOf": [
        {
          "$ref": "#/definitions/Facility"
        },
        {
          "properties": {
            "brandName": {
              "description": "Assigned Type: ota2-0400:StringShort",
              "type": "string",
              "maxLength": 128
            },
            "chainName": {
              "description": "Assigned Type: ota2-0400:StringShort",
              "type": "string",
              "maxLength": 128
            },
            "Features": {
              "description": "Assigned Type: ota2-0400:Features",
              "$ref": "#/definitions/Features"
            },
            "SegmentCategory": {
              "description": "Assigned Type: ota2-0300:SegmentCategory_Enum",
              "$ref": "#/definitions/SegmentCategory_Enum"
            },
            "HotelDetails": {
              "description": "Assigned Type: orghs-0300:HotelDetails",
              "$ref": "#/definitions/HotelDetails"
            },
            "RateRange": {
              "description": "Assigned Type: ota2-0400:RateRange",
              "$ref": "#/definitions/RateRange"
            },
            "ExtensionPoint_Custom": {
              "$ref": "#/definitions/ExtensionPoint_Custom"
            }
          }
        }
      ]
    },
    "FacilityQueryHotel": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Facility"
      },
      "description": "Describes a facility (e.g. Hotel Facility,Conference Facility, Golf Facility).  A facility must have a single address and a single geolocation.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "HotelName": {
          "description": "A name or partial name of hotel used in searching for a hotel facility.",
          "type": "string",
          "maxLength": 128
        },
        "BrandCode": {
          "description": "A code that identifies the brand or flag of a hotel, often used for independently-owned or franchised properties who are known by a specific brand.",
          "type": "string",
          "maxLength": 128
        },
        "BrandName": {
          "description": "The name of a brand of hotels (e.g., Courtyard, Hampton Inn).",
          "type": "string",
          "maxLength": 128
        },
        "ChainCode": {
          "description": "The code that identifies a hotel chain or management group. The hotel chain code is decided between vendors. This attribute is optional if the hotel is an independent property that can be identified by the HotelCode attribute.",
          "type": "string",
          "maxLength": 128
        },
        "ChainName": {
          "description": "The name of the hotel chain (e.g., Hilton, Marriott, Hyatt, Starwood).",
          "type": "string",
          "maxLength": 128
        },
        "Radius": {
          "description": "Assigned Type: ota2-0400:Radius",
          "$ref": "#/definitions/Radius"
        },
        "ReferencePoint": {
          "description": "Assigned Type: ota2-0400:ReferencePoint",
          "$ref": "#/definitions/ReferencePoint"
        },
        "DetailedHotelSearchCriteria": {
          "description": "Assigned Type: orghs-0300:DetailedHotelSearchCriteria",
          "$ref": "#/definitions/DetailedHotelSearchCriteria"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "FacilityQueryHotelAvail": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Facility"
      },
      "description": "Describes a facility (e.g. Hotel Facility,Conference Facility, Golf Facility).  A facility must have a single address and a single geolocation.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "BaseHospitalityFacilityQuery": {
          "description": "Assigned Type: orghs-0300:BaseHospitalityFacilityQuery",
          "$ref": "#/definitions/BaseHospitalityFacilityQuery"
        },
        "PropertyInfo": {
          "description": "Assigned Type: prod-0400:PropertyInfo",
          "$ref": "#/definitions/PropertyInfo"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "FacilityQueryHotelAvailRetrieve": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Facility"
      },
      "description": "Describes a facility (e.g. Hotel Facility,Conference Facility, Golf Facility).  A facility must have a single address and a single geolocation.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "FacilityIdentifier": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/FacilityID"
          },
          "maxItems": 100,
          "minItems": 1
        },
        "BaseHospitalityFacilityQuery": {
          "description": "Assigned Type: orghs-0300:BaseHospitalityFacilityQuery",
          "$ref": "#/definitions/BaseHospitalityFacilityQuery"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type",
        "FacilityIdentifier"
      ],
      "discriminator": "@type"
    },
    "FacilityKeyHotel": {
      "x-otm-entity": {
        "EntityType": "ChoiceObject",
        "EntityName": "FacilityKey"
      },
      "description": "Allows for a facility to be identified by and Identifier element or other elements\\/attributes that are appropriate for the specific type of facility.",
      "allOf": [
        {
          "$ref": "#/definitions/FacilityKey"
        },
        {
          "properties": {
            "FacilityCode": {
              "description": "A code that identifies the facility.",
              "type": "string",
              "maxLength": 128
            },
            "ChainCode": {
              "description": "A code that identifes the chain for which the facility belongs.",
              "type": "string",
              "maxLength": 128
            },
            "BrandCode": {
              "description": "A code that identifes the brand for which the facility belongs.",
              "type": "string",
              "maxLength": 128
            },
            "ExtensionPoint": {
              "$ref": "#/definitions/ExtensionPoint"
            }
          }
        }
      ]
    },
    "BaseHospitalityFacilityQuery": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "BaseHospitalityFacilityQuery"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "numberOfRooms": {
          "description": "1The number of rooms being queried for.",
          "x-otm-annotations": {
            "examples": [
              {
                "context": "orghs",
                "value": "1"
              }
            ]
          },
          "type": "integer",
          "format": "int32"
        },
        "DateTimeSpan": {
          "description": "Assigned Type: ota2-0400:TimeSpan",
          "$ref": "#/definitions/TimeSpan"
        },
        "GuestCount": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/GuestCount"
          },
          "maxItems": 99
        },
        "RateRange": {
          "description": "Assigned Type: ota2-0400:RateRange",
          "$ref": "#/definitions/RateRange"
        },
        "DetailedHotelSearchCriteria": {
          "description": "Assigned Type: orghs-0300:DetailedHotelSearchCriteria",
          "$ref": "#/definitions/DetailedHotelSearchCriteria"
        },
        "RoomTypeCode": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Code"
          },
          "maxItems": 100
        },
        "RatePlanCode": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/RatePlanCode"
          },
          "maxItems": 100
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type",
        "DateTimeSpan"
      ],
      "discriminator": "@type"
    },
    "Recreation": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "Recreation"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "recreationDescription": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "type": "string",
          "maxLength": 128
        },
        "Code": {
          "description": "Assigned Type: ota2-0300:RecreationService_Enum",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
              ]
            }
          },
          "$ref": "#/definitions/RecreationService_Enum"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "NameType": {
      "x-otm-entity": {
        "EntityType": "EnumerationClosed",
        "EntityName": "NameType"
      },
      "description": "OTA Code list: Name Type\\tNAM\\t\\n\\t1\\tFormer\\n\\t2\\tNickname\\n\\t3\\tAlternate\\n\\t4\\tMaiden",
      "type": "string",
      "enum": [
        "Alternate",
        "Former",
        "Maiden",
        "Nickname"
      ]
    },
    "OptInStatus_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationClosed",
        "EntityName": "OptInStatus_Enum"
      },
      "type": "string",
      "enum": [
        "OptedIn",
        "OptedOut",
        "Unknown"
      ]
    },
    "TextFormatType": {
      "x-otm-entity": {
        "EntityType": "EnumerationClosed",
        "EntityName": "TextFormatType"
      },
      "type": "string",
      "enum": [
        "PlainText",
        "HTML"
      ]
    },
    "YesNoInherit_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationClosed",
        "EntityName": "YesNoInherit_Enum"
      },
      "type": "string",
      "enum": [
        "Yes",
        "No",
        "Inherit"
      ]
    },
    "AddressBldgRoom": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "AddressBldgRoom"
      },
      "description": "A string with a minimum length of 0 and a maximum length of 512.",
      "properties": {
        "value": {
          "type": "string",
          "maxLength": 512
        },
        "buldingInd": {
          "description": "When true, the information is a building name.",
          "type": "boolean"
        }
      }
    },
    "AddressStreetNumber": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "AddressStreetNumber"
      },
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Extension: StreetNmbrType"
          ]
        }
      },
      "properties": {
        "value": {
          "type": "string",
          "maxLength": 128
        },
        "streetNmbrSuffix": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to8"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "StreetNmbrSuffix"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "B"
              }
            ]
          },
          "type": "string",
          "maxLength": 32
        },
        "streetDirection": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to8"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "StreetDirection"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "NNW"
              }
            ]
          },
          "type": "string",
          "maxLength": 32
        },
        "ruralRouteNmbr": {
          "description": "Assigned Type: ota2-0400:RuralRouteNumber",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}NumericStringLength1to5"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "RuralRouteNmbr"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "88"
              }
            ]
          },
          "type": "string",
          "pattern": "[0-9]{1,5}"
        },
        "pO_Box": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "examples": [
              {
                "context": "Common",
                "value": "98567499"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        }
      }
    },
    "CompanyName": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "CompanyName"
      },
      "description": "Identifies a company by name.",
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength0to128"
          ]
        }
      },
      "properties": {
        "value": {
          "type": "string",
          "maxLength": 512
        },
        "division": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to32"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Division"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "Travel Division"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "department": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to32"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Department"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "Adventure department"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "shortName": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to32"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "CompanyShortName"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "Adventure Inc"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "code": {
          "description": "Assigned Type: ota2-0400:Code",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to16"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Code"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "AI"
              }
            ]
          },
          "type": "string",
          "maxLength": 32
        },
        "codeContext": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "type": "string",
          "maxLength": 32
        },
        "description": {
          "description": "Assigned Type: ota2-0400:String",
          "type": "string",
          "maxLength": 512
        }
      }
    },
    "Country": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "Country"
      },
      "description": "ISO 3166 code for a country.",
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}ISO3166"
          ]
        }
      },
      "properties": {
        "value": {
          "type": "string",
          "pattern": "[a-zA-Z]{2}"
        },
        "name": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength0to64"
              ]
            },
            "examples": [
              {
                "context": "Common",
                "value": "Ireland"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        }
      }
    },
    "CurrencyAmount": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "CurrencyAmount"
      },
      "description": "A monetary amount.",
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}Money"
          ]
        }
      },
      "properties": {
        "value": {
          "type": "number",
          "format": "float"
        },
        "currencyCode": {
          "description": "Assigned Type: ota2-0400:CurrencyCode_ISO4217",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}AlphaLength3"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "CurrencyCode"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "USD"
              }
            ]
          },
          "type": "string",
          "pattern": "[a-zA-Z]{3}"
        },
        "minorUnit": {
          "description": "Assigned Type: ota2-0400:NonNegativeInteger",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Changed type from {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}nonNegativeInteger.",
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "DecimalPlaces"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "2"
              }
            ]
          },
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        }
      }
    },
    "DateTimeStamp": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "DateTimeStamp"
      },
      "description": "Time stamp of the creation.",
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}dateTime"
          ]
        }
      },
      "properties": {
        "value": {
          "type": "string",
          "format": "date-time"
        },
        "create": {
          "description": "Time stamp of the creation.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}dateTime"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "CreateDateTime"
              }
            ]
          },
          "type": "string",
          "format": "date-time"
        },
        "creatorID": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to32"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "CreatorID"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "c123456789"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "lastModify": {
          "description": "Time stamp of last modification.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}dateTime"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "LastModifyDateTime"
              }
            ]
          },
          "type": "string",
          "format": "date-time"
        },
        "lastModifierID": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to32"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "LastModifierID"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "m987654321"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "purge": {
          "description": "Date an item will be purged from a database (e.g., from a live database to an archive).",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}date"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "PurgeDate"
              }
            ]
          },
          "type": "string",
          "format": "date"
        }
      }
    },
    "Identifier": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "Identifier"
      },
      "description": "Identifier provides the ability to create a globally unique identifier.   This could be GUID a UUID or any other string that an organization that distinctly identifies the specific object.\\n\\nIdeally, for the identifier to be globally unique it must have a system provided identifier and the system must be identified using a global naming authority. System identification uses the domain naming system (DNS) to assure they are globally unique and should be an URL. The system provided ID will typically be a primary or surrogate key in a database.\\n\\nThe URL, system and company attributes can be omitted only when the system context can be implied by a parent or ancestor element.",
      "properties": {
        "value": {
          "type": "string",
          "maxLength": 128
        },
        "url": {
          "description": "Uri of the creating system. The URI should be an URL and be globally unique. Should only be omitted when the context is clearly implied for the containing document.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Identifier provides the ability to create a globally unique identifier. For the identifier to be globally unique it must have a system provided identifier and the system must be identified using a global naming authority. System identification uses the domain naming system (DNS) to assure they are globally unique and should be an URL. The system provided ID will typically be a primary or surrogate key in a database."
              ]
            }
          },
          "type": "string"
        },
        "system": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "examples": [
              {
                "context": "Common",
                "value": "sysABC3344"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "organization": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "examples": [
              {
                "context": "Common",
                "value": "Acme"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        }
      }
    },
    "PersonName": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "PersonName"
      },
      "description": "This provides name information for a person.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "Prefix": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 32
          },
          "maxItems": 3
        },
        "Given": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 128
          },
          "maxItems": 5
        },
        "Middle": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 128
          },
          "maxItems": 5
        },
        "Surname": {
          "description": "Family name, last name. \\nNote: Simple form of person name should be used for the full name.\\nMay also be used for full name if the sending system does not have the ability to separate a full name into its parts, e.g. the surname element may be used to pass the full name.",
          "x-otm-annotations": {
            "examples": [
              {
                "context": "Common",
                "value": "Smith"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "ExtensionPoint_Summary": {
          "$ref": "#/definitions/ExtensionPoint_Summary"
        }
      },
      "required": [
        "@type",
        "Surname"
      ],
      "discriminator": "@type"
    },
    "RelatedTraveler_Simple_Person_Name": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "PersonName"
      },
      "description": "This provides name information for a person.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "Prefix": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 32
          },
          "maxItems": 3
        },
        "Given": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 128
          },
          "maxItems": 5
        },
        "Middle": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 128
          },
          "maxItems": 5
        },
        "Surname": {
          "description": "Family name, last name. \\nNote: Simple form of person name should be used for the full name.\\nMay also be used for full name if the sending system does not have the ability to separate a full name into its parts, e.g. the surname element may be used to pass the full name.",
          "x-otm-annotations": {
            "examples": [
              {
                "context": "Common",
                "value": "Smith"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "ExtensionPoint_Summary": {
          "$ref": "#/definitions/ExtensionPoint_Summary"
        }
      },
      "required": [
        "@type",
        "Surname"
      ],
      "discriminator": "@type"
    },
    "PersonNameDetail": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "PersonName"
      },
      "description": "This provides name information for a person.",
      "allOf": [
        {
          "$ref": "#/definitions/PersonName"
        },
        {
          "properties": {
            "type": {
              "description": "Type of name of the individual, such as former, nickname, alternate or alias name. Refer to OpenTravel Code List Name Type (NAM).",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "NameType"
                  }
                ]
              },
              "$ref": "#/definitions/NameType"
            },
            "language": {
              "description": "The language the name is represented in, e.g. an Eastern name versus a Western name.",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}language"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "Language"
                  }
                ],
                "examples": [
                  {
                    "context": "Common",
                    "value": "en"
                  }
                ]
              },
              "type": "string"
            },
            "SurnamePrefix": {
              "description": "The surname prefix, e.g \\\"van der\\\", \\\"von\\\", \\\"de\\\".",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to16"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "SurnamePrefix"
                  }
                ]
              },
              "type": "string",
              "maxLength": 32
            },
            "Suffix": {
              "type": "array",
              "items": {
                "type": "string",
                "maxLength": 32
              },
              "maxItems": 3
            },
            "Title": {
              "type": "array",
              "items": {
                "type": "string",
                "maxLength": 32
              },
              "maxItems": 3
            },
            "PersonDocument": {
              "description": "Assigned Type: ota2-0400:PersonDocument",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}Document"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "Document"
                  }
                ]
              },
              "$ref": "#/definitions/PersonDocument"
            },
            "Privacy": {
              "description": "Assigned Type: ota2-0400:Privacy",
              "$ref": "#/definitions/Privacy"
            },
            "defaultInd": {
              "description": "If true, this is the default or primary name within a collection of names.",
              "type": "boolean"
            },
            "ExtensionPoint_Detail": {
              "$ref": "#/definitions/ExtensionPoint_Detail"
            }
          }
        }
      ]
    },
    "RelatedTraveler_Simple_Person_NameDetail": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "PersonName"
      },
      "description": "This provides name information for a person.",
      "allOf": [
        {
          "$ref": "#/definitions/PersonName"
        },
        {
          "properties": {
            "type": {
              "description": "Type of name of the individual, such as former, nickname, alternate or alias name. Refer to OpenTravel Code List Name Type (NAM).",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "NameType"
                  }
                ]
              },
              "$ref": "#/definitions/NameType"
            },
            "language": {
              "description": "The language the name is represented in, e.g. an Eastern name versus a Western name.",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}language"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "Language"
                  }
                ],
                "examples": [
                  {
                    "context": "Common",
                    "value": "en"
                  }
                ]
              },
              "type": "string"
            },
            "SurnamePrefix": {
              "description": "The surname prefix, e.g \\\"van der\\\", \\\"von\\\", \\\"de\\\".",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to16"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "SurnamePrefix"
                  }
                ]
              },
              "type": "string",
              "maxLength": 32
            },
            "Suffix": {
              "type": "array",
              "items": {
                "type": "string",
                "maxLength": 32
              },
              "maxItems": 3
            },
            "Title": {
              "type": "array",
              "items": {
                "type": "string",
                "maxLength": 32
              },
              "maxItems": 3
            },
            "PersonDocument": {
              "description": "Assigned Type: ota2-0400:PersonDocument",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}Document"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "Document"
                  }
                ]
              },
              "$ref": "#/definitions/PersonDocument"
            },
            "Privacy": {
              "description": "Assigned Type: ota2-0400:Privacy",
              "$ref": "#/definitions/Privacy"
            },
            "defaultInd": {
              "description": "If true, this is the default or primary name within a collection of names.",
              "type": "boolean"
            },
            "ExtensionPoint_Detail": {
              "$ref": "#/definitions/ExtensionPoint_Detail"
            }
          }
        }
      ]
    },
    "Privacy": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "Privacy"
      },
      "description": "Allows for control of the sharing of data between parties.",
      "properties": {
        "shareMarketInd": {
          "description": "Permission for sharing data for marketing purposes.",
          "$ref": "#/definitions/YesNoInherit_Enum"
        },
        "shareSyncInd": {
          "description": "Permission for sharing data for synchronization of information held by other travel service providers.",
          "$ref": "#/definitions/YesNoInherit_Enum"
        },
        "optInStatus": {
          "description": "If present and set to opt out, a customer has explicitly opted out of marketing communication. When set to opt out it overrides the ShareMarketInd.",
          "$ref": "#/definitions/OptInStatus_Enum"
        },
        "optInDate": {
          "description": "The date and time of opt in.",
          "type": "string",
          "format": "date-time"
        },
        "optOutDate": {
          "description": "The date and time of opt out.",
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "StateProv": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "StateProv"
      },
      "description": "The standard code or abbreviation for the state, province, or region.",
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StateProvCodeType"
          ]
        }
      },
      "properties": {
        "value": {
          "type": "string",
          "maxLength": 8,
          "minLength": 2
        },
        "name": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength0to64"
              ]
            },
            "examples": [
              {
                "context": "Common",
                "value": "Texas"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        }
      }
    },
    "Telephone": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "Telephone"
      },
      "description": "Information about a telephone number, including the actual number and its usage.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "countryAccessCode": {
          "description": "Assigned Type: ota2-0400:TelephoneCountryAccessCode",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}NumericStringLength1to3"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "CountryAccessCode"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "01"
              }
            ]
          },
          "type": "string",
          "pattern": "[0-9]{1,3}"
        },
        "areaCityCode": {
          "description": "Assigned Type: ota2-0400:TelephoneAreaCityCode",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}NumericStringLength1to8"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "AreaCityCode"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "202"
              }
            ]
          },
          "type": "string",
          "pattern": "[0-9]{1,8}"
        },
        "phoneNumber": {
          "description": "Assigned Type: ota2-0400:TelephoneNumber",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to32"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "PhoneNumber"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "5555555"
              }
            ]
          },
          "type": "string",
          "pattern": "[0-9]{7,20}"
        },
        "extension": {
          "description": "Assigned Type: ota2-0400:TelephoneExtension",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}NumericStringLength1to5"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Extension"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "237"
              }
            ]
          },
          "type": "string",
          "pattern": "[0-9]{1,5}"
        },
        "id": {
          "description": "Used elsewhere in the message to reference a specific telephone number (including faxes).",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}RPH_Type"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "RPH"
              }
            ]
          },
          "type": "string"
        },
        "role": {
          "$ref": "#/definitions/Enum_TelephoneRole"
        },
        "ExtensionPoint_Summary": {
          "$ref": "#/definitions/ExtensionPoint_Summary"
        }
      },
      "required": [
        "@type",
        "phoneNumber"
      ],
      "discriminator": "@type"
    },
    "TelephoneDetail": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "Telephone"
      },
      "description": "Information about a telephone number, including the actual number and its usage.",
      "allOf": [
        {
          "$ref": "#/definitions/Telephone"
        },
        {
          "properties": {
            "pIN": {
              "description": "Assigned Type: ota2-0400:StringTiny",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to8"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "PIN"
                  }
                ],
                "examples": [
                  {
                    "context": "Common",
                    "value": "1234"
                  }
                ]
              },
              "type": "string",
              "maxLength": 32
            },
            "remark": {
              "description": "Assigned Type: ota2-0400:StringText",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to128"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "Remark"
                  }
                ],
                "examples": [
                  {
                    "context": "Common",
                    "value": "Don\u0027t call after 10:00PM"
                  }
                ]
              },
              "type": "string",
              "maxLength": 4096
            },
            "Privacy": {
              "description": "Assigned Type: ota2-0400:Privacy",
              "$ref": "#/definitions/Privacy"
            },
            "PhoneLocationType": {
              "description": "Assigned Type: ota2-0300:PhoneLocation_Enum",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "PhoneLocationType"
                  }
                ]
              },
              "$ref": "#/definitions/PhoneLocation_Enum"
            },
            "PhoneTechType": {
              "description": "Assigned Type: ota2-0300:PhoneTechType_Enum",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "PhoneTechType"
                  }
                ]
              },
              "$ref": "#/definitions/PhoneTechType_Enum"
            },
            "PhoneUseType": {
              "description": "Assigned Type: ota2-0300:PhoneUseType_Enum",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "PhoneUseType"
                  }
                ]
              },
              "$ref": "#/definitions/PhoneUseType_Enum"
            },
            "defaultInd": {
              "description": "When true, indicates a default value should be used.",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}boolean"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "DefaultInd"
                  }
                ]
              },
              "type": "boolean"
            },
            "ExtensionPoint_Detail": {
              "$ref": "#/definitions/ExtensionPoint_Detail"
            }
          }
        }
      ]
    },
    "Enum_TelephoneRole": {
      "properties": {
        "value": {
          "$ref": "#/definitions/Enum_TelephoneRole_Open"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "Enum_TelephoneRole_Base": {
      "type": "string",
      "enum": [
        "Home",
        "Office",
        "Mobile",
        "Other"
      ]
    },
    "Enum_TelephoneRole_Open": {
      "type": "string",
      "enum": [
        "Home",
        "Office",
        "Mobile",
        "Other",
        "Other_"
      ]
    },
    "Text": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "Text"
      },
      "description": "Provides text and indicates whether it is formatted or not.",
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
          ]
        }
      },
      "properties": {
        "value": {
          "type": "string",
          "maxLength": 4096
        },
        "language": {
          "description": "The language in which the text is provided.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "AttributeGroup: LanguageGroup"
              ]
            },
            "examples": [
              {
                "context": "Common",
                "value": "en"
              }
            ]
          },
          "type": "string"
        },
        "textFormat": {
          "description": "Indicates the format of text used in the description e.g. unformatted  or html.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "LocalAnonymousType: FormattedTextTextType_TextFormat"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "TextFormat"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "Sample Formatted text"
              }
            ]
          },
          "$ref": "#/definitions/TextFormatType"
        }
      }
    },
    "TextParagraph": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "TextParagraph"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "name": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to64"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Name"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "paragraph name"
              }
            ]
          },
          "type": "string",
          "maxLength": 32
        },
        "number": {
          "description": "The sequence number for the paragraph.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Changed type from {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}nonNegativeInteger.",
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "ParagraphNumber"
              }
            ]
          },
          "type": "integer",
          "format": "int32"
        },
        "Text": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Text"
          },
          "maxItems": 1000
        },
        "Image": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ImageID"
          },
          "maxItems": 1000
        },
        "URL": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "maxItems": 1000
        },
        "ParagraphListItem": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ParagraphListItem"
          },
          "maxItems": 1000
        },
        "DateTimeStamp": {
          "description": "Assigned Type: ota2-0400:DateTimeStamp",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "AttributeGroup: DateTimeStampGroup"
              ]
            }
          },
          "$ref": "#/definitions/DateTimeStamp"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "Comment": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "TextParagraph"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "name": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to64"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Name"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "paragraph name"
              }
            ]
          },
          "type": "string",
          "maxLength": 32
        },
        "number": {
          "description": "The sequence number for the paragraph.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Changed type from {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}nonNegativeInteger.",
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "ParagraphNumber"
              }
            ]
          },
          "type": "integer",
          "format": "int32"
        },
        "Text": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Text"
          },
          "maxItems": 1000
        },
        "Image": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ImageID"
          },
          "maxItems": 1000
        },
        "URL": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "maxItems": 1000
        },
        "ParagraphListItem": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ParagraphListItem"
          },
          "maxItems": 1000
        },
        "DateTimeStamp": {
          "description": "Assigned Type: ota2-0400:DateTimeStamp",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "AttributeGroup: DateTimeStampGroup"
              ]
            }
          },
          "$ref": "#/definitions/DateTimeStamp"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "Description": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "TextParagraph"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "name": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to64"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Name"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "paragraph name"
              }
            ]
          },
          "type": "string",
          "maxLength": 32
        },
        "number": {
          "description": "The sequence number for the paragraph.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Changed type from {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}nonNegativeInteger.",
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "ParagraphNumber"
              }
            ]
          },
          "type": "integer",
          "format": "int32"
        },
        "Text": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Text"
          },
          "maxItems": 1000
        },
        "Image": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ImageID"
          },
          "maxItems": 1000
        },
        "URL": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "maxItems": 1000
        },
        "ParagraphListItem": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ParagraphListItem"
          },
          "maxItems": 1000
        },
        "DateTimeStamp": {
          "description": "Assigned Type: ota2-0400:DateTimeStamp",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "AttributeGroup: DateTimeStampGroup"
              ]
            }
          },
          "$ref": "#/definitions/DateTimeStamp"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "TimeSpan": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "TimeSpan"
      },
      "description": "Specifies the arrival date and departure date which covers the whole Reservation.",
      "properties": {
        "start": {
          "description": "Assigned Type: ota2-0400:DateTime",
          "x-otm-annotations": {
            "examples": [
              {
                "context": "Common",
                "value": "2016-08-22T19:32:52Z"
              }
            ]
          },
          "type": "string",
          "format": "date-time"
        },
        "end": {
          "description": "Assigned Type: ota2-0400:DateTime",
          "x-otm-annotations": {
            "examples": [
              {
                "context": "Common",
                "value": "2016-08-28T04:32:52Z"
              }
            ]
          },
          "type": "string",
          "format": "date-time"
        }
      },
      "required": [
        "start",
        "end"
      ]
    },
    "URL": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "URL"
      },
      "description": "Web site address, in IETF specified format.",
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}anyURI"
          ]
        }
      },
      "properties": {
        "value": {
          "type": "string"
        },
        "type": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to16"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Type"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "defaultInd": {
          "description": "Indicates whether or not this is the default URL.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "AttributeGroup: DefaultIndGroup"
              ]
            }
          },
          "type": "boolean"
        }
      }
    },
    "ParagraphListItem": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "ParagraphListItem"
      },
      "properties": {
        "listItem": {
          "description": "The item or sequence number.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}integer"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "ListItem"
              }
            ]
          },
          "type": "integer",
          "format": "int32"
        },
        "text2": {
          "description": "Assigned Type: ota2-0400:Text",
          "type": "string",
          "maxLength": 4096
        },
        "language": {
          "description": "The language in which the text is provided.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "AttributeGroup: LanguageGroup"
              ]
            },
            "examples": [
              {
                "context": "Common",
                "value": "en"
              }
            ]
          },
          "type": "string"
        },
        "textFormat": {
          "description": "Indicates the format of text used in the description e.g. unformatted  or html.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "LocalAnonymousType: FormattedTextTextType_TextFormat"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "TextFormat"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "Sample Formatted text"
              }
            ]
          },
          "$ref": "#/definitions/TextFormatType"
        }
      }
    },
    "DateTimeSpanWindows": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "DateTimeSpanWindows"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "TimeSpan": {
          "description": "Assigned Type: ota2-0400:TimeSpan",
          "$ref": "#/definitions/TimeSpan"
        },
        "ExtensionPoint_Summary": {
          "$ref": "#/definitions/ExtensionPoint_Summary"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "StayRestrictions": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "DateTimeSpanWindows"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "TimeSpan": {
          "description": "Assigned Type: ota2-0400:TimeSpan",
          "$ref": "#/definitions/TimeSpan"
        },
        "ExtensionPoint_Summary": {
          "$ref": "#/definitions/ExtensionPoint_Summary"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "DateTimeSpanWindowsDetail": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "DateTimeSpanWindows"
      },
      "allOf": [
        {
          "$ref": "#/definitions/DateTimeSpanWindows"
        },
        {
          "properties": {
            "StartWindow": {
              "description": "Assigned Type: ota2-0400:TimeSpan",
              "$ref": "#/definitions/TimeSpan"
            },
            "EndWindow": {
              "description": "Assigned Type: ota2-0400:TimeSpan",
              "$ref": "#/definitions/TimeSpan"
            },
            "Duration": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "maxItems": 100
            },
            "DurationUnit": {
              "description": "Assigned Type: ota2-0300:DurationUnit_Enum",
              "$ref": "#/definitions/DurationUnit_Enum"
            },
            "ExtensionPoint_Detail": {
              "$ref": "#/definitions/ExtensionPoint_Detail"
            }
          }
        }
      ]
    },
    "StayRestrictionsDetail": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "DateTimeSpanWindows"
      },
      "allOf": [
        {
          "$ref": "#/definitions/DateTimeSpanWindows"
        },
        {
          "properties": {
            "StartWindow": {
              "description": "Assigned Type: ota2-0400:TimeSpan",
              "$ref": "#/definitions/TimeSpan"
            },
            "EndWindow": {
              "description": "Assigned Type: ota2-0400:TimeSpan",
              "$ref": "#/definitions/TimeSpan"
            },
            "Duration": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "maxItems": 100
            },
            "DurationUnit": {
              "description": "Assigned Type: ota2-0300:DurationUnit_Enum",
              "$ref": "#/definitions/DurationUnit_Enum"
            },
            "ExtensionPoint_Detail": {
              "$ref": "#/definitions/ExtensionPoint_Detail"
            }
          }
        }
      ]
    },
    "Code": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "Code"
      },
      "description": "Any code used to specify an item, for example, type of traveler, service code, room amenity, etc.  May be used to reference the OpenTravel RMA Codelist.",
      "properties": {
        "value": {
          "type": "string",
          "maxLength": 32
        },
        "codeContext": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "type": "string",
          "maxLength": 32
        },
        "description": {
          "description": "Assigned Type: ota2-0400:String",
          "type": "string",
          "maxLength": 512
        }
      }
    },
    "PersonDocument": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "PersonDocument"
      },
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to32",
            "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to32"
          ]
        }
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "DocType": {
          "description": "Assigned Type: ota2-0300:DocumentType_Enum",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "DocType"
              }
            ]
          },
          "$ref": "#/definitions/DocumentType_Enum"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "PayloadStdAttributes": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "PayloadStdAttributes"
      },
      "description": "The standard attributes that appear on the root element for all OpenTravel messages.",
      "properties": {
        "echoToken": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to128"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "EchoToken"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "timeStamp": {
          "description": "YYYY-MM-DDThh:mm:ssZ with time values using the 24 hour clock:\\n20 November 2003, 1:59:38 pm UTC becomes 2003-11-20T13:59:38Z",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}dateTime"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "TimeStamp"
              }
            ]
          },
          "type": "string",
          "format": "date-time"
        },
        "target": {
          "description": "Test or Production target system indicator.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "LocalAnonymousType: OTA_PayloadStdAttributes_Target"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Target"
              }
            ]
          },
          "$ref": "#/definitions/TargetEnvironment_Enum"
        },
        "targetName": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to64"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "TargetName"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "version": {
          "description": "The OpenTravel message version indicated by a decimal value.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}decimal"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Version"
              }
            ]
          },
          "type": "number",
          "format": "float"
        },
        "transactionIdentifier": {
          "description": "Unique identifier to relate all messages within a transaction (e.g. this would be sent in all request and response messages that are part of an on-going transaction).",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "TransactionIdentifier"
              }
            ]
          },
          "type": "string"
        },
        "sequenceNmbr": {
          "description": "Implementer: Message resynchronization typically is required if a system has been off-line and needs to retrieve messages that were missed.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Changed type from {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}nonNegativeInteger.",
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "SequenceNmbr"
              }
            ]
          },
          "type": "string"
        },
        "transactionStatusCode": {
          "description": "This indicates where this message falls within a sequence of messages.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "LocalAnonymousType: OTA_PayloadStdAttributes_TransactionStatusCode"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "TransactionStatusCode"
              }
            ]
          },
          "$ref": "#/definitions/TransactionStatusCode_Enum"
        },
        "correlationID": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to64"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "CorrelationID"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "primaryLangID": {
          "description": "ISO 639 (3) character language codes: http:\\/\\/en.wikipedia.org\\/wiki\\/Lists_of_ISO_639_codes",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}language"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "PrimaryLangID"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "en"
              }
            ]
          },
          "type": "string"
        },
        "altLangID": {
          "description": "ISO 639 (3) character language codes: http:\\/\\/en.wikipedia.org\\/wiki\\/Lists_of_ISO_639_codes",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}language"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "AltLangID"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "es"
              }
            ]
          },
          "type": "string"
        },
        "retransmissionIndicatorInd": {
          "description": "Implementer: It is recommended that this attribute is used (i.e., set to TRUE) only when a message is retransmitted.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}boolean"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "RetransmissionIndicator"
              }
            ]
          },
          "type": "boolean"
        }
      },
      "required": [
        "version"
      ]
    },
    "TargetEnvironment_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationClosed",
        "EntityName": "TargetEnvironment_Enum"
      },
      "type": "string",
      "enum": [
        "Test",
        "Production"
      ]
    },
    "TransactionStatusCode_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationClosed",
        "EntityName": "TransactionStatusCode_Enum"
      },
      "type": "string",
      "enum": [
        "Start",
        "End",
        "Rollback",
        "InSeries",
        "Continuation",
        "Subsequent"
      ]
    },
    "ErrorWarning": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "ErrorWarning"
      },
      "description": "The error in textual format.",
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to64"
          ]
        }
      },
      "properties": {
        "value": {
          "type": "string",
          "maxLength": 512
        },
        "language": {
          "description": "Assigned Type: ota2-0400:LanguageCode",
          "type": "string"
        },
        "type": {
          "$ref": "#/definitions/ErrorWarningType_Enum_Base"
        },
        "typeExtension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        },
        "shortText": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "type": "string",
          "maxLength": 128
        },
        "code": {
          "description": "Assigned Type: ota2-0400:OTA_Code",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}OTA_CodeType"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Code"
              }
            ]
          },
          "type": "string",
          "pattern": "[0-9A-Z]{1,4}(\\.[A-Z]{3}(\\.X){0,1}){0,1}"
        },
        "docURL": {
          "description": "If present, this URL refers to an online description of the error that occurred.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}anyURI"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "DocURL"
              }
            ]
          },
          "type": "string"
        },
        "tag": {
          "description": "Assigned Type: ota2-0400:String",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Tag"
              }
            ]
          },
          "type": "string",
          "maxLength": 512
        },
        "recordID": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to64"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "RecordID"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "nodeList": {
          "description": "Assigned Type: ota2-0400:String",
          "type": "string",
          "maxLength": 512
        },
        "status": {
          "$ref": "#/definitions/Status_Enum_Base"
        },
        "statusExtension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "POS": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "POS"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "Source": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Source"
          },
          "maxItems": 10,
          "minItems": 1
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type",
        "Source"
      ],
      "discriminator": "@type"
    },
    "Geolocation": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "Geolocation"
      },
      "description": "TODO-(use enums and other for lat,long??  Format for the lat and long, is there a XML format)Used to specify the geographic coordinates of a location.",
      "properties": {
        "latitude": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to16"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Latitude"
              }
            ]
          },
          "type": "string",
          "maxLength": 32
        },
        "longitude": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to16"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Longitude"
              }
            ]
          },
          "type": "string",
          "maxLength": 32
        },
        "altitude": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to16"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Altitude"
              }
            ]
          },
          "type": "string",
          "maxLength": 32
        },
        "altitudeUnitOfMeasure_Enum": {
          "description": "Provides the unit of measure for the altitude (e.g., feet, meters, miles, kilometers). Refer to OpenTravel Code List Unit of Measure Code (UOM).",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}OTA_CodeType"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "AltitudeUnitOfMeasureCode"
              }
            ]
          },
          "$ref": "#/definitions/UnitOfMeasure_Enum"
        },
        "mapURL": {
          "description": "The URL of a map image.",
          "type": "string"
        },
        "formatURL": {
          "description": "The URL to the format for the latitude and longitude for this location.",
          "type": "string"
        }
      }
    },
    "RequestorID": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "RequestorID"
      },
      "description": "An identifier of the entity making the request (e.g. ATA\\/IATA\\/ID number, Electronic Reservation Service Provider (ERSP), Association of British Travel Agents.(ABTA)).",
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Extension: UniqueID_Type"
          ]
        }
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "Identifier": {
          "description": "Assigned Type: ota2-0400:Identifier",
          "$ref": "#/definitions/Identifier"
        },
        "ExtensionPoint_Summary": {
          "$ref": "#/definitions/ExtensionPoint_Summary"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "RequestorIDDetail": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "RequestorID"
      },
      "description": "An identifier of the entity making the request (e.g. ATA\\/IATA\\/ID number, Electronic Reservation Service Provider (ERSP), Association of British Travel Agents.(ABTA)).",
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Extension: UniqueID_Type"
          ]
        }
      },
      "allOf": [
        {
          "$ref": "#/definitions/RequestorID"
        },
        {
          "properties": {
            "messagePassword": {
              "description": "Assigned Type: ota2-0400:StringTiny",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to16"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "MessagePassword"
                  }
                ]
              },
              "type": "string",
              "maxLength": 32
            },
            "personName": {
              "description": "Assigned Type: ota2-0400:PersonName",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to64"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "Name"
                  }
                ]
              },
              "type": "string",
              "maxLength": 512
            },
            "ExtensionPoint_Detail": {
              "$ref": "#/definitions/ExtensionPoint_Detail"
            }
          }
        }
      ]
    },
    "Source": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "Source"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "agentSine": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to16"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "AgentSine"
              }
            ]
          },
          "type": "string",
          "maxLength": 32
        },
        "pseudoCityCode": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to16"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "PseudoCityCode"
              }
            ]
          },
          "type": "string",
          "maxLength": 32
        },
        "iSOCountry": {
          "description": "Assigned Type: ota2-0400:CountryCode_ISO3166",
          "x-otm-annotations": {
            "documentation": {
              "references": [
                "http:\\/\\/simple.wikipedia.org\\/wiki\\/ISO_3166-1_alpha-3"
              ],
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}ISO3166"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "ISOCountry"
              }
            ]
          },
          "type": "string",
          "pattern": "[a-zA-Z]{2}"
        },
        "iSOCurrency": {
          "description": "Assigned Type: ota2-0400:CurrencyCode_ISO4217",
          "x-otm-annotations": {
            "documentation": {
              "references": [
                "http:\\/\\/www.iso.org\\/iso\\/support\\/currency_codes_list-1.htm"
              ],
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}AlphaLength3"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "ISOCurrency"
              }
            ]
          },
          "type": "string",
          "pattern": "[a-zA-Z]{3}"
        },
        "agentDutyCode": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to16"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "AgentDutyCode"
              }
            ]
          },
          "type": "string",
          "maxLength": 32
        },
        "airlineVendorID": {
          "description": "Assigned Type: ota2-0400:AirlineCode_IATA",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}UpperCaseAlphaNumericLength2to3"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "AirlineVendorID"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "B6"
              }
            ]
          },
          "type": "string",
          "pattern": "([a-zA-Z0-9]{2})?"
        },
        "airportCode": {
          "description": "Assigned Type: ota2-0400:AirportCode_IATA",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}UpperCaseAlphaNumericLength3to5"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "AirportCode"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "IAD"
              }
            ]
          },
          "type": "string",
          "pattern": "([A-Z]{3})?"
        },
        "firstDepartPoint": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength3"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "FirstDepartPoint"
              }
            ]
          },
          "type": "string",
          "maxLength": 32
        },
        "eRSP_UserID": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to16"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "ERSP_UserID"
              }
            ]
          },
          "type": "string",
          "maxLength": 32
        },
        "terminalID": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to32"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "TerminalID"
              }
            ]
          },
          "type": "string",
          "maxLength": 32
        },
        "RequestorID": {
          "description": "Assigned Type: ota2-0400:RequestorID",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}RequestorID"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "RequestorID"
              }
            ]
          },
          "$ref": "#/definitions/RequestorID"
        },
        "Position": {
          "description": "Assigned Type: ota2-0400:Geolocation",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}Position"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Position"
              }
            ]
          },
          "$ref": "#/definitions/Geolocation"
        },
        "BookingChannel": {
          "description": "Assigned Type: ota2-0400:BookingChannel",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}BookingChannel"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "BookingChannel"
              }
            ]
          },
          "$ref": "#/definitions/BookingChannel"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "BookingChannel": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "BookingChannel"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "CompanyName": {
          "description": "Assigned Type: ota2-0400:CompanyName",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}CompanyNameType"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "CompanyName"
              }
            ]
          },
          "$ref": "#/definitions/CompanyName"
        },
        "Type": {
          "description": "Assigned Type: ota2-0300:BookingChannel_Enum",
          "$ref": "#/definitions/BookingChannel_Enum"
        },
        "primaryInd": {
          "description": "Indicates whether the enumerated booking channel is the primary means of connectivity used by the source.",
          "type": "boolean"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "Result": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "Result"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "Errors": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ErrorWarning"
          },
          "maxItems": 50
        },
        "Warnings": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ErrorWarning"
          },
          "maxItems": 50
        },
        "Status": {
          "description": "Assigned Type: ota2-0300:Status_Enum",
          "$ref": "#/definitions/Status_Enum"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "Address": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "Address"
      },
      "description": "Provides address information. Unformatted addresses are captured using the simple facet.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "AddressLine": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 128
          },
          "maxItems": 4
        },
        "BldgRoom": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/AddressBldgRoom"
          },
          "maxItems": 2
        },
        "Number": {
          "description": "Assigned Type: ota2-0400:AddressStreetNumber",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StreetNmbr"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "StreetNmbr"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "111"
              }
            ]
          },
          "$ref": "#/definitions/AddressStreetNumber"
        },
        "Street": {
          "description": "May contain the street number when the Street number element is missing.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to255"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "AddressLine"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "Travers Street"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "City": {
          "description": "City (e.g., Dublin), town, or postal station (i.e., a postal service territory, often used in a military address).",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to64"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "CityName"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "Dublin"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "County": {
          "description": "County or Region Name (e.g., Fairfax).",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to32"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "County"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "Fairfax"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "StateProv": {
          "description": "Assigned Type: ota2-0400:StateProv",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StateProvType"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "StateProv"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "Texas"
              }
            ]
          },
          "$ref": "#/definitions/StateProv"
        },
        "Country": {
          "description": "Assigned Type: ota2-0400:Country",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}CountryNameType"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "CountryName"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "IE"
              }
            ]
          },
          "$ref": "#/definitions/Country"
        },
        "PostalCode": {
          "description": "Post Office Code number.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to16"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "PostalCode"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "32165-9999"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "role": {
          "$ref": "#/definitions/Enum_AddressRole"
        },
        "ExtensionPoint_Summary": {
          "$ref": "#/definitions/ExtensionPoint_Summary"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "AddressDetail": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "Address"
      },
      "description": "Provides address information. Unformatted addresses are captured using the simple facet.",
      "allOf": [
        {
          "$ref": "#/definitions/Address"
        },
        {
          "properties": {
            "language": {
              "description": "Example: en",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}language"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "Language"
                  }
                ],
                "examples": [
                  {
                    "context": "Common",
                    "value": "en"
                  }
                ]
              },
              "type": "string"
            },
            "Remark": {
              "description": "A remark associated with this address.",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to128"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "Remark"
                  }
                ],
                "examples": [
                  {
                    "context": "Common",
                    "value": "This address should be used for all official correspondences."
                  }
                ]
              },
              "type": "string",
              "maxLength": 4096
            },
            "Privacy": {
              "description": "Assigned Type: ota2-0400:Privacy",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "AttributeGroup: PrivacyGroup"
                  ]
                }
              },
              "$ref": "#/definitions/Privacy"
            },
            "Type": {
              "description": "Assigned Type: ota2-0300:CommunicationLocation_Enum",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "Type"
                  }
                ],
                "examples": [
                  {
                    "context": "Common",
                    "value": "CLT"
                  }
                ]
              },
              "$ref": "#/definitions/CommunicationLocation_Enum"
            },
            "Use": {
              "description": "Assigned Type: ota2-0300:AddressUse_Enum",
              "x-otm-annotations": {
                "examples": [
                  {
                    "context": "Common",
                    "value": "AUT"
                  }
                ]
              },
              "$ref": "#/definitions/AddressUse_Enum"
            },
            "validInd": {
              "description": "If true, this is a valid and complete mailing address that has been verified through an address verification service or previously mailed materials have not been returned.",
              "type": "boolean"
            },
            "ExtensionPoint_Detail": {
              "$ref": "#/definitions/ExtensionPoint_Detail"
            }
          }
        }
      ]
    },
    "Enum_AddressRole": {
      "properties": {
        "value": {
          "$ref": "#/definitions/Enum_AddressRole_Open"
        },
        "extension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        }
      }
    },
    "Enum_AddressRole_Base": {
      "type": "string",
      "enum": [
        "Home",
        "Business",
        "Destination",
        "Other"
      ]
    },
    "Enum_AddressRole_Open": {
      "type": "string",
      "enum": [
        "Home",
        "Business",
        "Destination",
        "Other",
        "Other_"
      ]
    },
    "Location": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "Location"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "Address": {
          "description": "Assigned Type: ota2-0400:Address",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}AddressInfoType"
              ]
            }
          },
          "$ref": "#/definitions/Address"
        },
        "Position": {
          "description": "Assigned Type: ota2-0400:Geolocation",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}Position"
              ]
            }
          },
          "$ref": "#/definitions/Geolocation"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type",
        "Address"
      ],
      "discriminator": "@type"
    },
    "IndexPointCode_Enum": {
      "x-otm-entity": {
        "EntityType": "EnumerationClosed",
        "EntityName": "IndexPointCode_Enum"
      },
      "description": "Indicates the type of location being referenced (e.g., Airport, Hotel).",
      "type": "string",
      "enum": [
        "Cross street",
        "Intersection",
        "Highway",
        "Highway exit",
        "City",
        "Airport",
        "Rail station",
        "Subway station",
        "Geo location",
        "Bus/coach station",
        "Hotel",
        "Nearest major city",
        "Surrounding city",
        "Heliport",
        "Regional express train station",
        "Attraction",
        "Business location",
        "Car rental location",
        "Convention center",
        "Educational",
        "Event",
        "Ground transport",
        "Military bases",
        "Park/recreational area",
        "Port",
        "Resort/ski area",
        "Shopping center",
        "Sports",
        "Transportation points",
        "Neighbouring state",
        "Metro area",
        "District",
        "Local landmark"
      ]
    },
    "Email": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "Email"
      },
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to128",
            "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to128"
          ]
        }
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "remark": {
          "description": "Assigned Type: ota2-0400:StringText",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to128"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Remark"
              }
            ]
          },
          "type": "string",
          "maxLength": 4096
        },
        "textFormat": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "LocalAnonymousType: EmailType_TextFormat"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "TextFormat"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "Address": {
          "description": "The email address.  IETF RFC 2821",
          "type": "string",
          "maxLength": 512
        },
        "Type": {
          "description": "Assigned Type: ota2-0300:EmailAddressType_Enum",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "EmailType"
              }
            ]
          },
          "$ref": "#/definitions/EmailAddressType_Enum"
        },
        "Privacy": {
          "description": "Assigned Type: ota2-0400:Privacy",
          "$ref": "#/definitions/Privacy"
        },
        "validInd": {
          "description": "If true, this is a valid email address that has been system verified via a successful email transmission.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}boolean"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "ValidInd"
              }
            ]
          },
          "type": "boolean"
        },
        "defaultInd": {
          "description": "If true, this identifies this is the default email address.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "AttributeGroup: DefaultIndGroup"
              ]
            }
          },
          "type": "boolean"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type",
        "Address"
      ],
      "discriminator": "@type"
    },
    "MultimediaCollection": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "MultimediaCollection"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "lastUpdated": {
          "description": "The date and time when the collection of multimedia information was last updated.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}dateTime"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "LastUpdated"
              }
            ]
          },
          "type": "string",
          "format": "date-time"
        },
        "Multimedia": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Multimedia"
          },
          "minItems": 1
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type",
        "Multimedia"
      ],
      "discriminator": "@type"
    },
    "VideoCategoryID": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "VideoCategory"
      },
      "description": "Each video item represents a specific category.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "objID": {
          "description": "A unique identifier within this document for this object.",
          "type": "string"
        },
        "Identifier": {
          "description": "Assigned Type: ota2-0400:Identifier",
          "$ref": "#/definitions/Identifier"
        },
        "VideoCategoryRef": {
          "description": "Refers to the obj ID on an object defined elsewhere in the current document.",
          "type": "string"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "VideoCategory": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "VideoCategory"
      },
      "description": "Each video item represents a specific category.",
      "allOf": [
        {
          "$ref": "#/definitions/VideoCategoryID"
        },
        {
          "properties": {
            "category": {
              "description": "Assigned Type: ota2-0400:OTA_Code",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "Category"
                  }
                ]
              },
              "type": "string",
              "pattern": "[0-9A-Z]{1,4}(\\.[A-Z]{3}(\\.X){0,1}){0,1}"
            },
            "language": {
              "description": "The language associated with the caption for the category.",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}language"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "Language"
                  }
                ],
                "examples": [
                  {
                    "context": "Common",
                    "value": "en"
                  }
                ]
              },
              "type": "string"
            },
            "caption": {
              "description": "Assigned Type: ota2-0400:StringShort",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to128"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "Caption"
                  }
                ]
              },
              "type": "string",
              "maxLength": 128
            },
            "Video": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/VideoID"
              }
            },
            "removalInd": {
              "description": "If true, this item is obsolete and should be removed from the receiving system.",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "AttributeGroup: RemovalGroup"
                  ]
                }
              },
              "type": "boolean"
            },
            "ExtensionPoint": {
              "$ref": "#/definitions/ExtensionPoint"
            }
          }
        }
      ]
    },
    "MultimediaDescription": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "MultimediaDescription"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "title": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to64"
              ]
            }
          },
          "type": "string",
          "maxLength": 128
        },
        "language": {
          "description": "The language in which the content is provided.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}language"
              ]
            },
            "examples": [
              {
                "context": "Common",
                "value": "en"
              }
            ]
          },
          "type": "string"
        },
        "caption": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to128",
                "Example value: ca1 \u003d The Empire State Building at sunset.",
                "Example value: tns \u003d The Empire State Building at sunset."
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Caption"
              }
            ],
            "examples": [
              {
                "context": "Common",
                "value": "The Empire State Building at sunset."
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "FormattedTextSubSection": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/FormattedTextSubSection"
          },
          "maxItems": 99,
          "minItems": 1
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type",
        "FormattedTextSubSection"
      ],
      "discriminator": "@type"
    },
    "MultimediaDetails": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "MultimediaDetails"
      },
      "description": "Warning:  To be redesigned in the next release. The title of the multimedia object.",
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to64"
          ]
        }
      },
      "properties": {
        "value": {
          "type": "string",
          "maxLength": 128
        },
        "author": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to64"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Author"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "copyrightNotice": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to64"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "CopyrightNotice"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "copyrightOwner": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to64"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "CopyrightOwner"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "copyrightStart": {
          "description": "Assigned Type: ota2-0400:DateTime",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}DateOrDateTimeType"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "CopyrightStart"
              }
            ]
          },
          "type": "string",
          "format": "date-time"
        },
        "copyrightEnd": {
          "description": "Assigned Type: ota2-0400:DateTime",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}DateOrDateTimeType"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "CopyrightEnd"
              }
            ]
          },
          "type": "string",
          "format": "date-time"
        },
        "effectiveStart": {
          "description": "Assigned Type: ota2-0400:DateTime",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}DateOrDateTimeType"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "EffectiveStart"
              }
            ]
          },
          "type": "string",
          "format": "date-time"
        },
        "effectiveEnd": {
          "description": "Assigned Type: ota2-0400:DateTime",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}DateOrDateTimeType"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "EffectiveEnd"
              }
            ]
          },
          "type": "string",
          "format": "date-time"
        },
        "applicableStart": {
          "description": "Start month and day or date for which the multimedia content is relevent (e.g. the start of a season or the start of an event). When a year is not used (i.e. only the month and day) it signifies a recurring event.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}DateOrMonthDay"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "ApplicableStart"
              }
            ]
          },
          "type": "string",
          "format": "date"
        },
        "applicableEnd": {
          "description": "End month and day or date for which the multimedia content is relevent (e.g. the end of a season or the start of an event). When a year is not used (i.e. only the month and day) it signifies a recurring event.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}DateOrMonthDay"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "ApplicableEnd"
              }
            ]
          },
          "type": "string",
          "format": "date"
        }
      }
    },
    "VideoID": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Video"
      },
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Extension: VideoItemType"
          ]
        }
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "objID": {
          "description": "A unique identifier within this document for this object.",
          "type": "string"
        },
        "Identifier": {
          "description": "Assigned Type: ota2-0400:Identifier",
          "$ref": "#/definitions/Identifier"
        },
        "VideoRef": {
          "description": "Refers to the obj ID on an object defined elsewhere in the current document.",
          "type": "string"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "Video": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Video"
      },
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Extension: VideoItemType"
          ]
        }
      },
      "allOf": [
        {
          "$ref": "#/definitions/VideoID"
        },
        {
          "properties": {
            "unitOfMeasureCode": {
              "description": "Assigned Type: ota2-0400:OTA_Code",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "UnitOfMeasureCode"
                  }
                ]
              },
              "type": "string",
              "pattern": "[0-9A-Z]{1,4}(\\.[A-Z]{3}(\\.X){0,1}){0,1}"
            },
            "width": {
              "description": "The width of the video item (unit specified by unit of measure).",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}positiveInteger"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "Width"
                  }
                ]
              },
              "type": "integer",
              "format": "int32"
            },
            "height": {
              "description": "The height of the video item (unit specified by unit of measure).",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}positiveInteger"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "Height"
                  }
                ]
              },
              "type": "integer",
              "format": "int32"
            },
            "bitRate": {
              "description": "The bit rate of the video item.",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}positiveInteger"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "BitRate"
                  }
                ]
              },
              "type": "integer",
              "format": "int32"
            },
            "length": {
              "description": "The length of the video item (unit specified by unit of measure).",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}positiveInteger"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "Length"
                  }
                ]
              },
              "type": "integer",
              "format": "int32"
            },
            "version": {
              "description": "The version of the video item.",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "Version"
                  }
                ]
              },
              "type": "string"
            },
            "format": {
              "description": "Assigned Type: ota2-0400:OTA_Code",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}OTA_CodeType"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "Format"
                  }
                ]
              },
              "type": "string",
              "pattern": "[0-9A-Z]{1,4}(\\.[A-Z]{3}(\\.X){0,1}){0,1}"
            },
            "fileSize": {
              "description": "The size of the multimedia file in bytes.",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}positiveInteger"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "FileSize"
                  }
                ]
              },
              "type": "integer",
              "format": "int32"
            },
            "fileName": {
              "description": "Assigned Type: ota2-0400:StringShort",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to64"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "FileName"
                  }
                ]
              },
              "type": "string",
              "maxLength": 128
            },
            "streamingSource": {
              "description": "Example: YouTube",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "StreamingSource"
                  }
                ]
              },
              "type": "string"
            },
            "URL": {
              "description": "URL of the multimedia item for a specific format.",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}anyURI"
                  ]
                },
                "equivalents": [
                  {
                    "context": "Common",
                    "value": "URL"
                  }
                ]
              },
              "type": "string"
            },
            "Details": {
              "description": "Assigned Type: ota2-0400:MultimediaDetails",
              "$ref": "#/definitions/MultimediaDetails"
            },
            "MultimediaDescription": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/MultimediaDescription"
              }
            },
            "DateTimeStamp": {
              "description": "Assigned Type: ota2-0400:DateTimeStamp",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "AttributeGroup: DateTimeStampGroup"
                  ]
                }
              },
              "$ref": "#/definitions/DateTimeStamp"
            },
            "ExtensionPoint": {
              "$ref": "#/definitions/ExtensionPoint"
            }
          }
        }
      ]
    },
    "Rating": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "Rating"
      },
      "description": "The actual award or rating received by the facility.",
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
          ]
        }
      },
      "properties": {
        "value": {
          "type": "string"
        },
        "provider": {
          "description": "The name of the award or ratings provider.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Provider"
              }
            ]
          },
          "type": "string"
        },
        "description": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "type": "string",
          "maxLength": 128
        }
      }
    },
    "ProcessingInfo": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "ProcessingInfo"
      },
      "description": "Transaction processing directives, including display currency overrides. If no display currency information is provided, the display and pricing currency will default to the value in POS\\/Source\\/@ISOCurrency.",
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "(Developer Notes) An agreement should be in place with your trading partners that specifies what information is summary versus detail."
          ]
        }
      },
      "properties": {
        "displayCurrency": {
          "description": "Assigned Type: ota2-0400:CurrencyCode_ISO4217",
          "x-otm-annotations": {
            "documentation": {
              "references": [
                "(Reference): http:\\/\\/www.opentraveldevelopersnetwork.com\\/Supported_ISO_Standards.php"
              ],
              "more-info": [
                "(More Info): http:\\/\\/www.opentraveldevelopersnetwork.com\\/2012A_SchemaDoc\\/DisplayCurrency"
              ]
            }
          },
          "type": "string",
          "pattern": "[a-zA-Z]{3}"
        },
        "positiveInteger": {
          "description": "The maximum quantity of search results in the response.",
          "type": "integer",
          "format": "int32"
        },
        "summaryResultsInd": {
          "description": "If true, summary information is requested in the search results.",
          "type": "boolean"
        }
      }
    },
    "OperationSchedule": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "OperationSchedule"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "daysOfWeek": {
          "description": "The day(s) of week to which the operation time applies.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "AttributeGroup: DOW_PatternGroup"
              ]
            }
          },
          "$ref": "#/definitions/DayOfOperation"
        },
        "additionalOperationInfoCode": {
          "description": "Assigned Type: ota2-0400:OTA_Code",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
              ]
            }
          },
          "type": "string",
          "pattern": "[0-9A-Z]{1,4}(\\.[A-Z]{3}(\\.X){0,1}){0,1}"
        },
        "frequency": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to64"
              ]
            }
          },
          "type": "string",
          "maxLength": 128
        },
        "text": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength0to64"
              ]
            }
          },
          "type": "string",
          "maxLength": 128
        },
        "DateTimeSpanWindows": {
          "description": "Assigned Type: ota2-0400:DateTimeSpanWindows",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "AttributeGroup: DateTimeSpanGroup"
              ]
            }
          },
          "$ref": "#/definitions/DateTimeSpanWindows"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "RateRange": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "RateRange"
      },
      "description": "A range of monetary values within which the cost of the available products are requested.",
      "properties": {
        "minRate": {
          "description": "Assigned Type: ota2-0400:Money",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}Money"
              ]
            }
          },
          "type": "number",
          "format": "float"
        },
        "maxRate": {
          "description": "Assigned Type: ota2-0400:Money",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}Money"
              ]
            }
          },
          "type": "number",
          "format": "float"
        },
        "fixedRate": {
          "description": "Assigned Type: ota2-0400:Money",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}Money"
              ]
            }
          },
          "type": "number",
          "format": "float"
        },
        "rateTimeUnit": {
          "description": "Used to specify the period of time to which the rates apply.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}TimeUnitType"
              ]
            }
          },
          "$ref": "#/definitions/TimeUnit_Enum"
        },
        "currencyCode": {
          "description": "Assigned Type: ota2-0400:CurrencyCode_ISO4217",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}AlphaLength3"
              ]
            }
          },
          "type": "string",
          "pattern": "[a-zA-Z]{3}"
        }
      }
    },
    "Radius": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "Radius"
      },
      "description": "The radius distance.",
      "properties": {
        "value": {
          "type": "integer",
          "format": "int32"
        },
        "unitOfMeasure": {
          "description": "The unit of measure for the radius value.",
          "$ref": "#/definitions/UnitOfMeasure_Enum"
        }
      }
    },
    "LocationCode": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "LocationCode"
      },
      "description": "Location code is city, stateProvence, or country code",
      "properties": {
        "value": {
          "type": "string",
          "maxLength": 32
        },
        "city": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to8"
              ]
            },
            "examples": [
              {
                "context": "Common",
                "value": "Lancaster"
              }
            ]
          },
          "type": "string",
          "maxLength": 32
        },
        "stateProvince": {
          "description": "Assigned Type: ota2-0400:StateProvCode",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to8"
              ]
            }
          },
          "type": "string",
          "maxLength": 8,
          "minLength": 2
        },
        "country": {
          "description": "Assigned Type: ota2-0400:CountryCode_ISO3166",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}ISO3166"
              ]
            },
            "examples": [
              {
                "context": "Common",
                "value": "US"
              }
            ]
          },
          "type": "string",
          "pattern": "[a-zA-Z]{2}"
        },
        "codeContext": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "type": "string",
          "maxLength": 32
        }
      }
    },
    "ImageID": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Image"
      },
      "description": "Warning:  This will be redesigned in the next release.",
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Extension: VideoItemType"
          ]
        }
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "objID": {
          "description": "A unique identifier within this document for this object.",
          "type": "string"
        },
        "Identifier": {
          "description": "Assigned Type: ota2-0400:Identifier",
          "$ref": "#/definitions/Identifier"
        },
        "ImageRef": {
          "description": "Refers to the obj ID on an object defined elsewhere in the current document.",
          "type": "string"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "Image": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Image"
      },
      "description": "Warning:  This will be redesigned in the next release.",
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Extension: VideoItemType"
          ]
        }
      },
      "allOf": [
        {
          "$ref": "#/definitions/ImageID"
        },
        {
          "properties": {
            "version": {
              "description": "The version of the video item.",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
                  ]
                }
              },
              "type": "string"
            },
            "format": {
              "description": "Assigned Type: ota2-0400:OTA_Code",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}OTA_CodeType"
                  ]
                }
              },
              "type": "string",
              "pattern": "[0-9A-Z]{1,4}(\\.[A-Z]{3}(\\.X){0,1}){0,1}"
            },
            "dimensionCategory": {
              "description": "Assigned Type: ota2-0400:StringTiny",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to16",
                    "Example value: ca1 \u003d 100x100",
                    "Example value: tns \u003d 100x100"
                  ]
                }
              },
              "type": "string",
              "maxLength": 32
            },
            "sort": {
              "description": "Example: 1",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}positiveInteger",
                    "Example value: ca1 \u003d !",
                    "Example value: tns \u003d !"
                  ]
                }
              },
              "type": "integer",
              "format": "int32"
            },
            "resolution": {
              "description": "Example: 600",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}positiveInteger",
                    "Example value: ca1 \u003d 600",
                    "Example value: tns \u003d 600"
                  ]
                }
              },
              "type": "integer",
              "format": "int32"
            },
            "colorSpace": {
              "description": "Assigned Type: ota2-0400:StringShort",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to64"
                  ]
                }
              },
              "type": "string",
              "maxLength": 128
            },
            "URL": {
              "description": "URL of the multimedia item for a specific format.",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}anyURI"
                  ]
                }
              },
              "type": "string"
            },
            "Details": {
              "description": "Assigned Type: ota2-0400:MultimediaDetails",
              "$ref": "#/definitions/MultimediaDetails"
            },
            "MultimediaDescription": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/MultimediaDescription"
              }
            },
            "DateTimeStamp": {
              "description": "Assigned Type: ota2-0400:DateTimeStamp",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "AttributeGroup: DateTimeStampGroup"
                  ]
                }
              },
              "$ref": "#/definitions/DateTimeStamp"
            },
            "Email": {
              "description": "Assigned Type: ota2-0400:Email",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string",
                    "Example value: ca1 \u003d John@company.com",
                    "Example value: tns \u003d John@company.com"
                  ]
                }
              },
              "$ref": "#/definitions/Email"
            },
            "Dimensions": {
              "description": "Assigned Type: ota2-0400:Dimensions",
              "$ref": "#/definitions/Dimensions"
            },
            "File": {
              "description": "Assigned Type: ota2-0400:File",
              "$ref": "#/definitions/File"
            },
            "Geolocation": {
              "description": "Assigned Type: ota2-0400:Geolocation",
              "$ref": "#/definitions/Geolocation"
            },
            "originalIndicatorInd": {
              "description": "When true, the image is the original file and format. When false, the image is not the original file and format.",
              "type": "boolean"
            },
            "ExtensionPoint": {
              "$ref": "#/definitions/ExtensionPoint"
            }
          }
        }
      ]
    },
    "RelativePosition": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "RelativePosition"
      },
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Extension: TransportationsType",
            "Extension: TransportationsType"
          ]
        }
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "direction": {
          "description": "Defines the cardinal direction (e.g., north, south, southwest).",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            }
          },
          "type": "string"
        },
        "distance": {
          "description": "Defines the distance between two points.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            }
          },
          "type": "string"
        },
        "unitOfMeasureCode": {
          "description": "The unit of measure in a code format. Refer to OpenTravel Code List Unit of Measure Code (UOM).",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}OTA_CodeType"
              ]
            }
          },
          "$ref": "#/definitions/UnitOfMeasure_Enum"
        },
        "indexPointCode": {
          "description": "This is the object referred to by the relative position (e.g. cross street, airport). Refer to OpenTravel Code List Index Point Code (IPC).",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
              ]
            }
          },
          "$ref": "#/definitions/IndexPointCode_Enum"
        },
        "name": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength0to64"
              ]
            }
          },
          "type": "string",
          "maxLength": 128
        },
        "toFrom": {
          "description": "Used to indicate whether the context is to a facility or from a facility.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "LocalAnonymousType: RelativePositionType_ToFrom"
              ]
            }
          },
          "$ref": "#/definitions/ToFrom_Enum"
        },
        "positionAccuracy": {
          "description": "Indicates the accuracy of the property\u0027s geo-coding, since the property\u0027s longitude and latitude may not always be exact. Refer to OpenTravel Code List Position Accuracy Code (PAC).",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
              ]
            }
          },
          "$ref": "#/definitions/PositionAccuracy_Enum"
        },
        "Transportations": {
          "description": "Assigned Type: ota2-0400:Transportations",
          "$ref": "#/definitions/Transportations"
        },
        "Description": {
          "description": "Assigned Type: ota2-0400:Description",
          "$ref": "#/definitions/Description"
        },
        "nearestInd": {
          "description": "The indicator for whether this location is nearest.",
          "type": "boolean"
        },
        "primaryInd": {
          "description": "Indicates whether the reference point is considered the main reference point for the specific type of IndexPointCode (e.g., in Dallas, where IndexPointCode\u003dairport Dallas\\/Fort Worth airport would be the primary airport even if another airport such as Love Field is closer).",
          "type": "boolean"
        },
        "approximateDistanceInd": {
          "description": "When true, the distance information is approximate.",
          "type": "boolean"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "Directions": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "RelativePosition"
      },
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Extension: TransportationsType",
            "Extension: TransportationsType"
          ]
        }
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "direction": {
          "description": "Defines the cardinal direction (e.g., north, south, southwest).",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            }
          },
          "type": "string"
        },
        "distance": {
          "description": "Defines the distance between two points.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            }
          },
          "type": "string"
        },
        "unitOfMeasureCode": {
          "description": "The unit of measure in a code format. Refer to OpenTravel Code List Unit of Measure Code (UOM).",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}OTA_CodeType"
              ]
            }
          },
          "$ref": "#/definitions/UnitOfMeasure_Enum"
        },
        "indexPointCode": {
          "description": "This is the object referred to by the relative position (e.g. cross street, airport). Refer to OpenTravel Code List Index Point Code (IPC).",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
              ]
            }
          },
          "$ref": "#/definitions/IndexPointCode_Enum"
        },
        "name": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength0to64"
              ]
            }
          },
          "type": "string",
          "maxLength": 128
        },
        "toFrom": {
          "description": "Used to indicate whether the context is to a facility or from a facility.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "LocalAnonymousType: RelativePositionType_ToFrom"
              ]
            }
          },
          "$ref": "#/definitions/ToFrom_Enum"
        },
        "positionAccuracy": {
          "description": "Indicates the accuracy of the property\u0027s geo-coding, since the property\u0027s longitude and latitude may not always be exact. Refer to OpenTravel Code List Position Accuracy Code (PAC).",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
              ]
            }
          },
          "$ref": "#/definitions/PositionAccuracy_Enum"
        },
        "Transportations": {
          "description": "Assigned Type: ota2-0400:Transportations",
          "$ref": "#/definitions/Transportations"
        },
        "Description": {
          "description": "Assigned Type: ota2-0400:Description",
          "$ref": "#/definitions/Description"
        },
        "nearestInd": {
          "description": "The indicator for whether this location is nearest.",
          "type": "boolean"
        },
        "primaryInd": {
          "description": "Indicates whether the reference point is considered the main reference point for the specific type of IndexPointCode (e.g., in Dallas, where IndexPointCode\u003dairport Dallas\\/Fort Worth airport would be the primary airport even if another airport such as Love Field is closer).",
          "type": "boolean"
        },
        "approximateDistanceInd": {
          "description": "When true, the distance information is approximate.",
          "type": "boolean"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "TransportationID": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Transportation"
      },
      "description": "Detailed transportation information.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "objID": {
          "description": "A unique identifier within this document for this object.",
          "type": "string"
        },
        "Identifier": {
          "description": "Assigned Type: ota2-0400:Identifier",
          "$ref": "#/definitions/Identifier"
        },
        "TransportationRef": {
          "description": "Refers to the obj ID on an object defined elsewhere in the current document.",
          "type": "string"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "Transportation": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Transportation"
      },
      "description": "Detailed transportation information.",
      "allOf": [
        {
          "$ref": "#/definitions/TransportationID"
        },
        {
          "properties": {
            "notificationRequired": {
              "description": "Assigned Type: ota2-0400:StringShort",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to64"
                  ]
                }
              },
              "type": "string",
              "maxLength": 128
            },
            "description": {
              "description": "Assigned Type: ota2-0400:StringShort",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength0to64"
                  ]
                }
              },
              "type": "string",
              "maxLength": 128
            },
            "typicalTravelTime": {
              "description": "The normal (average) travel time required to get to or from the location, measured in minutes.",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
                  ]
                }
              },
              "type": "string"
            },
            "Type": {
              "description": "Assigned Type: ota2-0300:Transportation_Enum",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
                  ]
                }
              },
              "$ref": "#/definitions/Transportation_Enum"
            },
            "MultimediaCollection": {
              "description": "Assigned Type: ota2-0400:MultimediaCollection",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}MultimediaDescriptionsType"
                  ]
                }
              },
              "$ref": "#/definitions/MultimediaCollection"
            },
            "OperationSchedule": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/OperationSchedule"
              },
              "maxItems": 30
            },
            "Description": {
              "description": "Descriptive text that describes the transportation.",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
                  ]
                }
              },
              "type": "string",
              "maxLength": 4096
            },
            "ChargeUnit": {
              "description": "Assigned Type: ota2-0300:ChargeUnit_Enum",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
                  ]
                }
              },
              "$ref": "#/definitions/ChargeUnit_Enum"
            },
            "CurrencyAmount": {
              "description": "Assigned Type: ota2-0400:CurrencyAmount",
              "x-otm-annotations": {
                "documentation": {
                  "implementers": [
                    "AttributeGroup: CurrencyAmountGroup"
                  ]
                }
              },
              "$ref": "#/definitions/CurrencyAmount"
            },
            "Address": {
              "description": "Assigned Type: ota2-0400:Address",
              "$ref": "#/definitions/Address"
            },
            "LocationCode": {
              "description": "Assigned Type: ota2-0400:LocationCode",
              "$ref": "#/definitions/LocationCode"
            },
            "includedInd": {
              "description": "When true there is no additional charge for transportation.",
              "type": "boolean"
            },
            "ExtensionPoint": {
              "$ref": "#/definitions/ExtensionPoint"
            }
          }
        }
      ]
    },
    "Transportations": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "Transportations"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "Transportation": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/TransportationID"
          }
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "ArrivalTransport": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "Transportations"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "Transportation": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/TransportationID"
          }
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "DepartureTransport": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "Transportations"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "Transportation": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/TransportationID"
          }
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "TextCategory": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "TextCategory"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "category": {
          "description": "Assigned Type: ota2-0400:OTA_Code",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Category"
              }
            ]
          },
          "type": "string",
          "pattern": "[0-9A-Z]{1,4}(\\.[A-Z]{3}(\\.X){0,1}){0,1}"
        },
        "caption": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to128"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Caption"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "Text": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Text"
          }
        },
        "removalInd": {
          "description": "If true, this item is obsolete and should be removed from the receiving system.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "AttributeGroup: RemovalGroup"
              ]
            }
          },
          "type": "boolean"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "FormattedTextSubSection": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "FormattedTextSubSection"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "subTitle": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to64"
              ]
            }
          },
          "type": "string",
          "maxLength": 128
        },
        "subCode": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to8"
              ]
            }
          },
          "type": "string",
          "maxLength": 32
        },
        "subSectionNumber": {
          "description": "This attribute may be used when there is a need to number all of the sub-sections of information that is to be presented.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}Numeric1to999"
              ]
            }
          },
          "type": "integer",
          "format": "int32"
        },
        "TextParagraph": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/TextParagraph"
          },
          "maxItems": 99,
          "minItems": 1
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type",
        "TextParagraph"
      ],
      "discriminator": "@type"
    },
    "Features": {
      "x-otm-entity": {
        "EntityType": "ChoiceObject",
        "EntityName": "Features"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "quantity": {
          "description": "Assigned Type: ota2-0400:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "Description": {
          "description": "Assigned Type: ota2-0400:Description",
          "$ref": "#/definitions/Description"
        },
        "ExtensionPoint_Shared": {
          "$ref": "#/definitions/ExtensionPoint_Shared"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "FeaturesOther": {
      "x-otm-entity": {
        "EntityType": "ChoiceObject",
        "EntityName": "Features"
      },
      "allOf": [
        {
          "$ref": "#/definitions/Features"
        },
        {
          "properties": {
            "Code": {
              "description": "Assigned Type: ota2-0400:Code",
              "$ref": "#/definitions/Code"
            },
            "ExtensionPoint": {
              "$ref": "#/definitions/ExtensionPoint"
            }
          }
        }
      ]
    },
    "Ancillary": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "Ancillary"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "name": {
          "description": "Assigned Type: ota2-0400:String",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            }
          },
          "type": "string",
          "maxLength": 512
        },
        "description": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "type": "string",
          "maxLength": 128
        },
        "PricingType": {
          "description": "Assigned Type: ota2-0300:ChargeUnit_Enum",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "LocalAnonymousType: GolfAmenityType_PricingType"
              ]
            }
          },
          "$ref": "#/definitions/ChargeUnit_Enum"
        },
        "Code": {
          "description": "Assigned Type: ota2-0400:Code",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            }
          },
          "$ref": "#/definitions/Code"
        },
        "includedInd": {
          "description": "If TRUE, this is included with the purchase.",
          "type": "boolean"
        },
        "orderableInd": {
          "description": "If TRUE, this ancillary may be ordered.",
          "type": "boolean"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "Amenity": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "Amenity"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "name": {
          "description": "Assigned Type: ota2-0400:String",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            }
          },
          "type": "string",
          "maxLength": 512
        },
        "description": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "type": "string",
          "maxLength": 128
        },
        "Code": {
          "description": "Assigned Type: ota2-0400:Code",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            }
          },
          "$ref": "#/definitions/Code"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "ReferencePoint": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "ReferencePoint"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "name": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "type": "string",
          "maxLength": 128
        },
        "Code": {
          "description": "Assigned Type: ota2-0400:Code",
          "$ref": "#/definitions/Code"
        },
        "Type": {
          "description": "Assigned Type: ota2-0300:ReferencePoint_Enum",
          "$ref": "#/definitions/ReferencePoint_Enum"
        },
        "Location": {
          "description": "Assigned Type: ota2-0400:Location",
          "$ref": "#/definitions/Location"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "Dimensions": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "Dimensions"
      },
      "description": "Defines the dimensions of an object.",
      "properties": {
        "unitOfMeasureCode": {
          "description": "Assigned Type: ota2-0400:OTA_Code",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
              ]
            }
          },
          "type": "string",
          "pattern": "[0-9A-Z]{1,4}(\\.[A-Z]{3}(\\.X){0,1}){0,1}"
        },
        "width": {
          "description": "The width of the image item (unit specified by unit of measure).",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}positiveInteger"
              ]
            }
          },
          "type": "integer",
          "format": "int32"
        },
        "height": {
          "description": "The height of the image item (unit specified by unit of measure).",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}positiveInteger"
              ]
            }
          },
          "type": "integer",
          "format": "int32"
        }
      }
    },
    "File": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "File"
      },
      "description": "Properties of a file.",
      "properties": {
        "name": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to64"
              ]
            }
          },
          "type": "string",
          "maxLength": 128
        },
        "size": {
          "description": "The size of the multimedia file in bytes.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}positiveInteger"
              ]
            }
          },
          "type": "integer",
          "format": "int32"
        },
        "originalName": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to64",
                "Example value: ca1 \u003d 394820",
                "Example value: tns \u003d 394820"
              ]
            }
          },
          "type": "string",
          "maxLength": 128
        }
      }
    },
    "Multimedia": {
      "x-otm-entity": {
        "EntityType": "ChoiceObject",
        "EntityName": "Multimedia"
      },
      "description": "Describes multimedia item(s).",
      "properties": {
        "@type": {
          "type": "string"
        },
        "objID": {
          "description": "A unique identifier within this document for this object.",
          "type": "string"
        },
        "lastUpdated": {
          "description": "The date and time when the multimedia information was last updated.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}dateTime"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "LastUpdated"
              }
            ]
          },
          "type": "string",
          "format": "date-time"
        },
        "version": {
          "description": "The version of the content, typically in the form of \\\"1\\\" or \\\"2.3.\\\"",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "Version"
              }
            ]
          },
          "type": "string"
        },
        "language": {
          "description": "The language associated with the caption for the category.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}language"
              ]
            },
            "examples": [
              {
                "context": "Common",
                "value": "en"
              }
            ]
          },
          "type": "string"
        },
        "caption": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to128"
              ]
            }
          },
          "type": "string",
          "maxLength": 128
        },
        "Category": {
          "description": "Assigned Type: ota2-0300:PictureCategory_Enum",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
              ]
            }
          },
          "$ref": "#/definitions/PictureCategory_Enum"
        },
        "AdditionalDetailType": {
          "description": "Assigned Type: ota2-0300:AdditionalDetailType_Enum",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "AdditionalDetailCode"
              }
            ]
          },
          "$ref": "#/definitions/AdditionalDetailType_Enum"
        },
        "InfoType": {
          "description": "Assigned Type: ota2-0300:InformationType_Enum",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "InfoCode"
              }
            ]
          },
          "$ref": "#/definitions/InformationType_Enum"
        },
        "ExtensionPoint_Shared": {
          "$ref": "#/definitions/ExtensionPoint_Shared"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "MultimediaText": {
      "x-otm-entity": {
        "EntityType": "ChoiceObject",
        "EntityName": "Multimedia"
      },
      "description": "Describes multimedia item(s).",
      "allOf": [
        {
          "$ref": "#/definitions/Multimedia"
        },
        {
          "properties": {
            "TextCategory": {
              "description": "Assigned Type: ota2-0400:TextCategory",
              "$ref": "#/definitions/TextCategory"
            },
            "ExtensionPoint": {
              "$ref": "#/definitions/ExtensionPoint"
            }
          }
        }
      ]
    },
    "MultimediaVideo": {
      "x-otm-entity": {
        "EntityType": "ChoiceObject",
        "EntityName": "Multimedia"
      },
      "description": "Describes multimedia item(s).",
      "allOf": [
        {
          "$ref": "#/definitions/Multimedia"
        },
        {
          "properties": {
            "VideoCategory": {
              "description": "Assigned Type: ota2-0400:VideoCategory",
              "$ref": "#/definitions/VideoCategoryID"
            },
            "ExtensionPoint": {
              "$ref": "#/definitions/ExtensionPoint"
            }
          }
        }
      ]
    },
    "AccessibilityFeatures_OTA20400": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "AccessibilityFeatures"
      },
      "description": "Describes accessibility featrues.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "AccessibilityFeatures": {
          "description": "Assigned Type: ota2-0300:DisabilityFeature_Enum",
          "$ref": "#/definitions/DisabilityFeature_Enum"
        },
        "ExtensionPoint_Summary": {
          "$ref": "#/definitions/ExtensionPoint_Summary"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "BasePayload": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "BasePayload"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "PayloadStdAttributes": {
          "description": "Assigned Type: ota2-0400:PayloadStdAttributes",
          "$ref": "#/definitions/PayloadStdAttributes"
        },
        "POS": {
          "description": "Assigned Type: ota2-0400:POS",
          "$ref": "#/definitions/POS"
        },
        "ProcessingInfo": {
          "description": "Assigned Type: ota2-0400:ProcessingInfo",
          "$ref": "#/definitions/ProcessingInfo"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "RatePlanCode": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "RatePlanCode"
      },
      "description": "A string value may be used to request a particular code or an ID if the guest qualifies for a specific rate, such as AARP, AAA, a corporate rate, etc., or to specify a negotiated code as a result of a negotiated rate.",
      "x-otm-annotations": {
        "documentation": {
          "implementers": [
            "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to64"
          ]
        }
      },
      "properties": {
        "value": {
          "type": "string",
          "maxLength": 128
        },
        "ratePlanType": {
          "$ref": "#/definitions/RatePlanType_Enum_Base"
        },
        "ratePlanTypeExtension": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1
        },
        "ratePlanID": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to64"
              ]
            },
            "equivalents": [
              {
                "context": "ph",
                "value": "RatePlanID"
              }
            ],
            "examples": [
              {
                "context": "ph",
                "value": "12345678"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "ratePlanCategory": {
          "description": "Assigned Type: ota2-0400:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to64"
              ]
            },
            "equivalents": [
              {
                "context": "ph",
                "value": "RatePlanCategory"
              }
            ],
            "examples": [
              {
                "context": "ph",
                "value": "POD"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "promotionCode": {
          "description": "Assigned Type: ota2-0400:StringTiny",
          "x-otm-annotations": {
            "examples": [
              {
                "context": "ph",
                "value": "L9Z"
              }
            ]
          },
          "type": "string",
          "maxLength": 32
        },
        "promotionVendorCode": {
          "description": "Assigned Type: ota2-0400:ListOfTinyStrings",
          "x-otm-annotations": {
            "examples": [
              {
                "context": "ph",
                "value": "WT1"
              }
            ]
          },
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 32
          }
        },
        "ratePlanQualifierInd": {
          "description": "The Rate Plan Qualifier is used to control the sort order of RatePlans. Those Rate Plans that are not qualified will appear first, those that are qualified will appear last.",
          "type": "boolean"
        }
      }
    },
    "HospitalityFacilities": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "BaseResponse"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "FacilityHotel": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/FacilityHotel"
          },
          "maxItems": 1000
        },
        "PayloadStdAttributes": {
          "description": "Assigned Type: ota2-0400:PayloadStdAttributes",
          "$ref": "#/definitions/PayloadStdAttributes"
        },
        "Result": {
          "description": "Assigned Type: ota2-0400:Result",
          "$ref": "#/definitions/Result"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "FacilityQueryFacilitySearch": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Facility"
      },
      "description": "Describes a facility (e.g. Hotel Facility,Conference Facility, Golf Facility).  A facility must have a single address and a single geolocation.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "BasePayload": {
          "description": "Assigned Type: ota2-0400:BasePayload",
          "$ref": "#/definitions/BasePayload"
        },
        "FacilityQueryHotel": {
          "description": "Assigned Type: orghs-0300:Facility_Query_Hotel",
          "$ref": "#/definitions/FacilityQueryHotel"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "FacilityQueryRetrieveHospitalityAvailability": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Facility"
      },
      "description": "Describes a facility (e.g. Hotel Facility,Conference Facility, Golf Facility).  A facility must have a single address and a single geolocation.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "BasePayload": {
          "description": "Assigned Type: ota2-0400:BasePayload",
          "$ref": "#/definitions/BasePayload"
        },
        "FacilityQueryHotelAvailRetrieve": {
          "description": "Assigned Type: orghs-0300:Facility_Query_HotelAvailRetrieve",
          "$ref": "#/definitions/FacilityQueryHotelAvailRetrieve"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "FacilityQueryFindHospitalityAvailability": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "Facility"
      },
      "description": "Describes a facility (e.g. Hotel Facility,Conference Facility, Golf Facility).  A facility must have a single address and a single geolocation.",
      "properties": {
        "@type": {
          "type": "string"
        },
        "BasePayload": {
          "description": "Assigned Type: ota2-0400:BasePayload",
          "$ref": "#/definitions/BasePayload"
        },
        "FacilityQueryHotelAvail": {
          "description": "Assigned Type: orghs-0300:Facility_Query_HotelAvail",
          "$ref": "#/definitions/FacilityQueryHotelAvail"
        },
        "ExtensionPoint": {
          "$ref": "#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "ExtensionPoint": {},
    "ExtensionPoint_Summary": {},
    "ExtensionPoint_Detail": {},
    "ExtensionPoint_Custom": {},
    "ExtensionPoint_Query": {},
    "ExtensionPoint_Update": {},
    "ExtensionPoint_Shared": {},
    "ExtensionPoint_Choice": {}
  }
}