OrganizationHospitality

TravelUnited StatesStandardsAviationHospitalityHotelsCar RentalRailCruiseDistributionGDSBookingChannelXMLJSON Schema
View JSON Schema on GitHub

JSON Schema

opentravel-2020a-organization-hospitality-4-0-0-trim.schema.json Raw ↑
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "title": "OrganizationHospitality",
  "x-otm-library": {
    "LibraryName": "OrganizationHospitality",
    "LibraryVersion": "4.0.0",
    "LibraryStatus": "DRAFT",
    "SourceFile": "/OrganizationHospitality_4_0_0.otm",
    "CompilerVersion": "4.0-SNAPSHOT",
    "CompileDate": "2019-10-30T13:33:15.014-0400"
  },
  "definitions": {
    "Recreation": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "Recreation"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "name": {
          "description": "Assigned Type: ota2-0500:StringShort",
          "type": "string",
          "maxLength": 128
        },
        "sort": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "yearReplaced": {
          "description": "The year when recreation associated equipment was last replaced.",
          "type": "string",
          "format": "date"
        },
        "language": {
          "description": "Identifies the language in which the attraction information is sent.",
          "type": "string"
        },
        "Proximity": {
          "description": "Assigned Type: ota2-0400:Proximity_Enum",
          "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/Proximity_Enum"
        },
        "ID": {
          "description": "Assigned Type: ota2-0500:Identifier",
          "$ref": "Common_5_0_0_Trim.schema.json#/definitions/Identifier"
        },
        "RecreationService": {
          "description": "Assigned Type: ota2-0400:RecreationService_Enum",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType"
              ]
            }
          },
          "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/RecreationService_Enum"
        },
        "ContactInformation": {
          "type": "array",
          "items": {
            "$ref": "Common_5_0_0_Trim.schema.json#/definitions/ContactInformation"
          },
          "maxItems": 10
        },
        "OperationSchedule": {
          "type": "array",
          "items": {
            "$ref": "Common_5_0_0_Trim.schema.json#/definitions/OperationSchedule"
          },
          "maxItems": 100
        },
        "ReferencePoint": {
          "type": "array",
          "items": {
            "$ref": "Common_5_0_0_Trim.schema.json#/definitions/ReferencePoint"
          },
          "maxItems": 100
        },
        "MultimediaCollection": {
          "description": "Assigned Type: ota2-0500:MultimediaCollection",
          "$ref": "Common_5_0_0_Trim.schema.json#/definitions/MultimediaCollection"
        },
        "RecreationFeature": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/RecreationFeature"
          },
          "maxItems": 100
        },
        "Description": {
          "description": "Assigned Type: ota2-0500:Description",
          "$ref": "Common_5_0_0_Trim.schema.json#/definitions/Description"
        },
        "includedInd": {
          "description": "When true, this recreation is included with basic room rates.",
          "type": "boolean"
        },
        "featuredInd": {
          "description": "If true, this is a featured recreation for the property.",
          "type": "boolean"
        },
        "ExtensionPoint": {
          "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "HotelDescriptiveContentID": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "HotelDescriptiveContent"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "objID": {
          "description": "A unique identifier within this document for this object.",
          "type": "string"
        },
        "DescriptiveContentRef": {
          "description": "Refers to the obj ID on an object defined elsewhere in the current document.",
          "type": "string"
        },
        "Identifier": {
          "description": "Assigned Type: ota2-0500:Identifier",
          "$ref": "Common_5_0_0_Trim.schema.json#/definitions/Identifier"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "HotelDescriptiveContent": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "HotelDescriptiveContent"
      },
      "allOf": [
        {
          "$ref": "#/definitions/HotelDescriptiveContentID"
        },
        {
          "properties": {
            "language": {
              "description": "Assigned Type: ota2-0500:LanguageCode",
              "type": "string"
            },
            "CurrencyCode": {
              "description": "Assigned Type: ota2-0500:CurrencyCode",
              "$ref": "Common_5_0_0_Trim.schema.json#/definitions/CurrencyCode"
            },
            "DistanceUnitOfMeasure": {
              "description": "Assigned Type: ota2-0400:UnitOfMeasure_Enum",
              "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/UnitOfMeasure_Enum"
            },
            "AreaUnitOfMeasure": {
              "description": "Assigned Type: ota2-0400:UnitOfMeasure_Enum",
              "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/UnitOfMeasure_Enum"
            },
            "WeightUnitOfMeasure": {
              "description": "Assigned Type: ota2-0400:UnitOfMeasure_Enum",
              "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/UnitOfMeasure_Enum"
            },
            "TimeZone": {
              "description": "Describes the local time zone in which the hotel is located. This could include additional information regarding time zones (e.g., Daylight Saving Time observed), a proprietary code, the difference between the local time and GMT.",
              "type": "string",
              "maxLength": 128
            },
            "DateTimeSpanWindows": {
              "description": "Assigned Type: ota2-0500:DateTimeSpanWindows",
              "$ref": "Common_5_0_0_Trim.schema.json#/definitions/DateTimeSpanWindows"
            },
            "DestinationSystemCode": {
              "type": "array",
              "items": {
                "type": "string",
                "maxLength": 32
              },
              "maxItems": 100
            },
            "WeatherInfo": {
              "type": "array",
              "items": {
                "$ref": "Common_5_0_0_Trim.schema.json#/definitions/WeatherInfo"
              },
              "maxItems": 100
            },
            "BasicPropertyInfo": {
              "description": "Assigned Type: ph-0200:BasicPropertyInfo",
              "$ref": "Hospitality_2_0_0_Trim.schema.json#/definitions/BasicPropertyInfo"
            },
            "HotelPropertyInfo": {
              "description": "Assigned Type: orghs-0400:HotelPropertyInfo",
              "$ref": "#/definitions/HotelPropertyInfo"
            },
            "FacilityInfo": {
              "description": "Assigned Type: orghs-0400:FacilityInfo",
              "$ref": "#/definitions/FacilityInfo"
            },
            "HotelPolicies": {
              "description": "Assigned Type: orghs-0400:HotelPolicies",
              "$ref": "#/definitions/HotelPolicies"
            },
            "AreaInformation": {
              "description": "Assigned Type: org-0400:AreaInformation",
              "$ref": "Organization_4_0_0_Trim.schema.json#/definitions/AreaInformation"
            },
            "AffiliationInfo": {
              "description": "Assigned Type: org-0400:AffiliationInfo",
              "$ref": "Organization_4_0_0_Trim.schema.json#/definitions/AffiliationInfo"
            },
            "MultimediaCollection": {
              "description": "Assigned Type: ota2-0500:MultimediaCollection",
              "$ref": "Common_5_0_0_Trim.schema.json#/definitions/MultimediaCollection"
            },
            "ContactInformation": {
              "type": "array",
              "items": {
                "$ref": "Common_5_0_0_Trim.schema.json#/definitions/ContactInformation"
              },
              "maxItems": 100
            },
            "GDS_Information": {
              "description": "Assigned Type: orghs-0400:GDS_Information",
              "$ref": "#/definitions/GDS_Information"
            },
            "EffectivePeriod": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/EffectivePeriod"
              },
              "maxItems": 100
            },
            "RoomBlockInformation": {
              "description": "Assigned Type: orghs-0400:RoomBlockInformation",
              "$ref": "#/definitions/RoomBlockInformation"
            },
            "EnvironmentalImpact": {
              "description": "Assigned Type: ota2-0500:EnvironmentalImpact",
              "$ref": "Common_5_0_0_Trim.schema.json#/definitions/EnvironmentalImpact"
            },
            "ExtensionPoint": {
              "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint"
            }
          }
        }
      ]
    },
    "HotelDescriptiveContentQueryHotels": {
      "x-otm-entity": {
        "EntityType": "BusinessObject",
        "EntityName": "HotelDescriptiveContent"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "maxRepsonses": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "BasicPropertyInfo": {
          "type": "array",
          "items": {
            "$ref": "Hospitality_2_0_0_Trim.schema.json#/definitions/BasicPropertyInfo"
          }
        },
        "ExtensionPoint": {
          "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "CategoryCodes": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "CategoryCodes"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "LocationCategory": {
          "description": "Assigned Type: ota2-0400:LocationCategory_Enum",
          "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/LocationCategory_Enum"
        },
        "SegmentCategory": {
          "description": "Assigned Type: ota2-0400:SegmentCategory_Enum",
          "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/SegmentCategory_Enum"
        },
        "HotelCategory": {
          "type": "array",
          "items": {
            "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/PropertyClassType_Enum"
          },
          "maxItems": 5
        },
        "ArchitecturalStyle": {
          "type": "array",
          "items": {
            "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/ArchitecturalStyle_Enum"
          },
          "maxItems": 5
        },
        "GuestRoomInfo": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/GuestRoomInfo"
          },
          "maxItems": 99
        },
        "ExtensionPoint": {
          "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "GuestRoomInfo": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "GuestRoomInfo"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "GuestRoomInfo_Enum": {
          "description": "Assigned Type: ota2-0400:GuestRoomInfo_Enum",
          "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/GuestRoomInfo_Enum"
        },
        "Quantity": {
          "description": "The quanity of rooms that the hotel has of this type.",
          "type": "integer",
          "format": "int32"
        },
        "RateRangeInfo": {
          "description": "Assigned Type: ota2-0500:RateRangeInfo",
          "$ref": "Common_5_0_0_Trim.schema.json#/definitions/RateRangeInfo"
        },
        "MultimediaCollection": {
          "description": "Assigned Type: ota2-0500:MultimediaCollection",
          "$ref": "Common_5_0_0_Trim.schema.json#/definitions/MultimediaCollection"
        },
        "TextParagraph": {
          "description": "Assigned Type: ota2-0500:TextParagraph",
          "$ref": "Common_5_0_0_Trim.schema.json#/definitions/TextParagraph"
        },
        "ExtensionPoint": {
          "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "Service": {
      "x-otm-entity": {
        "EntityType": "ChoiceObject",
        "EntityName": "Service"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "inventoryCode": {
          "description": "Assigned Type: ota2-0500:StringShort",
          "type": "string",
          "maxLength": 128
        },
        "quantity": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "sort": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "codeDetail": {
          "description": "Assigned Type: ota2-0500:StringShort",
          "type": "string",
          "maxLength": 128
        },
        "Proximity": {
          "description": "Assigned Type: ota2-0400:Proximity_Enum",
          "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/Proximity_Enum"
        },
        "ContactInformation": {
          "description": "Assigned Type: ota2-0500:ContactInformation",
          "$ref": "Common_5_0_0_Trim.schema.json#/definitions/ContactInformation"
        },
        "RelativePosition": {
          "description": "Assigned Type: ota2-0500:RelativePosition",
          "$ref": "Common_5_0_0_Trim.schema.json#/definitions/RelativePosition"
        },
        "OperationSchedule": {
          "type": "array",
          "items": {
            "$ref": "Common_5_0_0_Trim.schema.json#/definitions/OperationSchedule"
          },
          "maxItems": 99
        },
        "MultimediaCollection": {
          "description": "Assigned Type: ota2-0500:MultimediaCollection",
          "$ref": "Common_5_0_0_Trim.schema.json#/definitions/MultimediaCollection"
        },
        "Description": {
          "description": "Assigned Type: ota2-0500:Description",
          "$ref": "Common_5_0_0_Trim.schema.json#/definitions/Description"
        },
        "includedInd": {
          "description": "When true, this service is included in the room rate.",
          "type": "boolean"
        },
        "availableToAnyGuestInd": {
          "description": "When tre the service is available to all guests at the facility.",
          "type": "boolean"
        },
        "featuredInd": {
          "description": "When true, this is a featured service for the property.",
          "type": "boolean"
        },
        "ExtensionPoint_Shared": {
          "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint_Shared"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "ServiceBusiness": {
      "x-otm-entity": {
        "EntityType": "ChoiceObject",
        "EntityName": "Service"
      },
      "allOf": [
        {
          "$ref": "#/definitions/Service"
        },
        {
          "properties": {
            "BusinessService": {
              "type": "array",
              "items": {
                "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/BusinessService_Enum"
              },
              "maxItems": 100
            },
            "ExtensionPoint": {
              "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint"
            }
          }
        }
      ]
    },
    "ServiceHotelAmenity": {
      "x-otm-entity": {
        "EntityType": "ChoiceObject",
        "EntityName": "Service"
      },
      "allOf": [
        {
          "$ref": "#/definitions/Service"
        },
        {
          "properties": {
            "HotelAmenity": {
              "type": "array",
              "items": {
                "$ref": "Common_5_0_0_Trim.schema.json#/definitions/Code"
              },
              "maxItems": 500
            },
            "ExtensionPoint": {
              "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint"
            }
          }
        }
      ]
    },
    "ServiceMealPlan": {
      "x-otm-entity": {
        "EntityType": "ChoiceObject",
        "EntityName": "Service"
      },
      "allOf": [
        {
          "$ref": "#/definitions/Service"
        },
        {
          "properties": {
            "MealPlan": {
              "type": "array",
              "items": {
                "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/MealPlan_Enum"
              },
              "maxItems": 30
            },
            "ExtensionPoint": {
              "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint"
            }
          }
        }
      ]
    },
    "ServiceMeetingRoom": {
      "x-otm-entity": {
        "EntityType": "ChoiceObject",
        "EntityName": "Service"
      },
      "allOf": [
        {
          "$ref": "#/definitions/Service"
        },
        {
          "properties": {
            "MeetingRoomCode_Enum": {
              "description": "Assigned Type: ota2-0400:MeetingRoomCode_Enum",
              "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/MeetingRoomCode_Enum"
            },
            "ExtensionPoint": {
              "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint"
            }
          }
        }
      ]
    },
    "DescriptiveContentFeatureSecurity": {
      "x-otm-entity": {
        "EntityType": "ChoiceObject",
        "EntityName": "DescriptiveContentFeature"
      },
      "allOf": [
        {
          "$ref": "Organization_4_0_0_Trim.schema.json#/definitions/DescriptiveContentFeature"
        },
        {
          "properties": {
            "SecurityFeature_Enum": {
              "description": "Assigned Type: ota2-0400:SecurityFeature_Enum",
              "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/SecurityFeature_Enum"
            },
            "ExtensionPoint": {
              "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint"
            }
          }
        }
      ]
    },
    "DescriptiveContentFeatureAccessibility": {
      "x-otm-entity": {
        "EntityType": "ChoiceObject",
        "EntityName": "DescriptiveContentFeature"
      },
      "allOf": [
        {
          "$ref": "Organization_4_0_0_Trim.schema.json#/definitions/DescriptiveContentFeature"
        },
        {
          "properties": {
            "AccessibilityCode": {
              "description": "Assigned Type: ota2-0400:DisabilityFeature_Enum",
              "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/DisabilityFeature_Enum"
            },
            "UnitOfMeasure_Enum": {
              "description": "Assigned Type: ota2-0400:UnitOfMeasure_Enum",
              "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/UnitOfMeasure_Enum"
            },
            "ExtensionPoint": {
              "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint"
            }
          }
        }
      ]
    },
    "FacilityInfo": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "FacilityInfo"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "MeetingRooms": {
          "description": "Assigned Type: org-0400:MeetingRooms",
          "$ref": "Organization_4_0_0_Trim.schema.json#/definitions/MeetingRooms"
        },
        "GuestRooms": {
          "description": "Assigned Type: orghs-0400:GuestRooms",
          "$ref": "#/definitions/GuestRooms"
        },
        "Restaurants": {
          "description": "Assigned Type: org-0400:Restaurants",
          "$ref": "Organization_4_0_0_Trim.schema.json#/definitions/Restaurants"
        },
        "ExtensionPoint": {
          "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "GuestRooms": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "GuestRooms"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "maxOccupancy": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "GuestRoom": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/GuestRoom"
          },
          "maxItems": 1000
        },
        "ExtensionPoint": {
          "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "GuestRoom": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "GuestRoom"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "iD": {
          "description": "Assigned Type: ota2-0500:StringTiny",
          "type": "string",
          "maxLength": 32
        },
        "language": {
          "description": "Assigned Type: ota2-0500:LanguageCode",
          "type": "string"
        },
        "sort": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "roomTypeName": {
          "description": "Assigned Type: ota2-0500:StringTiny",
          "type": "string",
          "maxLength": 32
        },
        "nonSmokingQuantity": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "maxOccupancy": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "minOccupancy": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "maxAdultOccupancy": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "maxChildOccupancy": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "Proximity": {
          "description": "Assigned Type: ota2-0400:Proximity_Enum",
          "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/Proximity_Enum"
        },
        "RoomTypeCode": {
          "description": "Assigned Type: ota2-0500:Code",
          "$ref": "Common_5_0_0_Trim.schema.json#/definitions/Code"
        },
        "TypeRoom": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/TypeRoom"
          },
          "maxItems": 5
        },
        "DescriptiveContentAmenity": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/DescriptiveContentAmenity"
          },
          "maxItems": 1000
        },
        "DescriptiveContentFeatureAccessibility": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/DescriptiveContentFeatureAccessibility"
          },
          "maxItems": 1000
        },
        "DescriptiveContentFeatureSecurity": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/DescriptiveContentFeatureSecurity"
          },
          "maxItems": 1000
        },
        "MultimediaCollection": {
          "description": "Assigned Type: ota2-0500:MultimediaCollection",
          "$ref": "Common_5_0_0_Trim.schema.json#/definitions/MultimediaCollection"
        },
        "Description": {
          "description": "Assigned Type: ota2-0500:Description",
          "$ref": "Common_5_0_0_Trim.schema.json#/definitions/Description"
        },
        "compositeInd": {
          "description": "Indicates that the room type contains multiple rooms sold as a single unit.",
          "type": "boolean"
        },
        "ExtensionPoint": {
          "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "TypeRoom": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "TypeRoom"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "standardBedQuantity": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "standardOccupancy": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "maxRollaways": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "size": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "count": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "name": {
          "description": "Assigned Type: ota2-0500:StringTiny",
          "type": "string",
          "maxLength": 32
        },
        "roomTypeCode": {
          "description": "Assigned Type: ota2-0500:StringTiny",
          "type": "string",
          "maxLength": 32
        },
        "gDSRoomTypeCode": {
          "description": "Assigned Type: ota2-0500:StringTiny",
          "type": "string",
          "maxLength": 32
        },
        "roomID": {
          "description": "Assigned Type: ota2-0500:StringTiny",
          "type": "string",
          "maxLength": 32
        },
        "floor": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "inventoryBlockCode": {
          "description": "Assigned Type: ota2-0500:StringTiny",
          "type": "string",
          "maxLength": 32
        },
        "configuration": {
          "description": "Assigned Type: ota2-0500:String",
          "type": "string",
          "maxLength": 512
        },
        "sizeMeasurement": {
          "description": "Assigned Type: ota2-0500:String",
          "type": "string",
          "maxLength": 512
        },
        "quantity": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "roomGender": {
          "description": "Used to request or specify a gender assignment for a room. Note: Typically used by Hosteliers.",
          "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/RoomGender_Enum"
        },
        "maxCribs": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "RoomCategory": {
          "description": "Assigned Type: ota2-0400:SegmentCategory_Enum",
          "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/SegmentCategory_Enum"
        },
        "RoomLocationCode": {
          "description": "Assigned Type: ota2-0400:RoomLocation_Enum",
          "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/RoomLocation_Enum"
        },
        "RoomView": {
          "description": "Assigned Type: ota2-0400:RoomViewType_Enum",
          "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/RoomViewType_Enum"
        },
        "BedType": {
          "type": "array",
          "items": {
            "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/BedType_Enum"
          },
          "maxItems": 5
        },
        "RoomClassification": {
          "description": "Assigned Type: ota2-0400:GuestRoomInfo_Enum",
          "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/GuestRoomInfo_Enum"
        },
        "RoomArchitecture": {
          "description": "Assigned Type: ota2-0400:ArchitecturalStyle_Enum",
          "$ref": "CodeList_4_0_0_Trim.schema.json#/definitions/ArchitecturalStyle_Enum"
        },
        "nonsmokingInd": {
          "description": "When true, this room type is non-smoking.",
          "type": "boolean"
        },
        "compositeInd": {
          "description": "When true, the room (suite) is a composite of smaller units.",
          "type": "boolean"
        },
        "shareRoomInd": {
          "description": "When true, the room requires or has sharing available. Note: Typically used by Hosteliers.",
          "type": "boolean"
        },
        "ExtensionPoint": {
          "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type"
      ],
      "discriminator": "@type"
    },
    "DescriptiveContentAmenity": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "DescriptiveContentAmenity"
      },
      "properties": {
        "@type": {
          "type": "string"
        },
        "quantity": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false
        },
        "amenityID": {
          "description": "Assigned Type: ota2-0500:StringTiny",
          "type": "string",
          "maxLength": 32
        },
        "RoomAmenity": {
          "description": "Assigned Type: ota2-0500:Code",
          "$ref": "Common_5_0_0_Trim.schema.json#/definitions/Code"
        },
        "OperationSchedule": {
          "type": "array",
          "items": {
            "$ref": "Common_5_0_0_Trim.schema.json#/definitions/OperationSchedule"
          },
          "maxItems": 100
        },
        "ContactInformation": {
          "type": "array",
          "items": {
            "$ref": "Common_5_0_0_Trim.schema.json#/definitions/ContactInformation"
          },
          "maxItems": 10
        },
        "MultimediaCollection": {
          "description": "Assigned Type: ota2-0500:MultimediaCollection",
          "$ref": "Common_5_0_0_Trim.schema.json#/definitions/MultimediaCollection"
        },
        "Description": {
          "description": "Assigned Type: ota2-0500:Description",
          "$ref": "Common_5_0_0_Trim.schema.json#/definitions/Description"
        },
        "includedInRateInd": {
          "description": "When true, this indicates that the amenity or service is included in the room rate (i.e., this servi

# --- truncated at 32 KB (80 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/opentravel-alliance/refs/heads/main/json-schema/opentravel-2020a-organization-hospitality-4-0-0-trim.schema.json