Created
November 20, 2023 20:47
-
-
Save mkubarycz/60b03787e04dc0a69e6190c0f6d95171 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| { | |
| "$schema": "http://json-schema.org/draft-04/schema#", | |
| "title": "Hospitality", | |
| "x-otm-library": { | |
| "ProjectName": "HotelDescriptiveContent013120.otp", | |
| "LibraryName": "Hospitality", | |
| "LibraryVersion": "2.0.0", | |
| "LibraryStatus": "FINAL", | |
| "SourceFile": "/Hospitality_2_0_0.otm", | |
| "CompilerVersion": "4.0-SNAPSHOT", | |
| "CompileDate": "2020-01-31T10:40:59.315-0500" | |
| }, | |
| "definitions": { | |
| "ProductHospitality": { | |
| "x-otm-entity": { | |
| "EntityType": "BusinessObject", | |
| "EntityName": "Product" | |
| }, | |
| "allOf": [ | |
| { | |
| "$ref": "Product_5_0_0.schema.json#/definitions/Product" | |
| }, | |
| { | |
| "properties": { | |
| "numberOfRooms": { | |
| "description": "The number of rooms associated with this hospitality product.", | |
| "type": "integer", | |
| "format": "int32" | |
| }, | |
| "RoomStay": { | |
| "description": "Assigned Type: ph-0200:RoomStay", | |
| "$ref": "#/definitions/RoomStayID" | |
| }, | |
| "GuestCount": { | |
| "type": "array", | |
| "items": { | |
| "$ref": "Product_5_0_0.schema.json#/definitions/GuestCount" | |
| }, | |
| "maxItems": 99 | |
| }, | |
| "DateTimeSpanWindows": { | |
| "description": "Assigned Type: ota2-0500:DateTimeSpanWindows", | |
| "$ref": "Common_5_0_0.schema.json#/definitions/DateTimeSpanWindows" | |
| }, | |
| "ExtensionPoint_Custom": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint_Custom" | |
| } | |
| }, | |
| "required": [ | |
| "RoomStay" | |
| ] | |
| } | |
| ] | |
| }, | |
| "AssociatedProductHospitality": { | |
| "x-otm-entity": { | |
| "EntityType": "BusinessObject", | |
| "EntityName": "Product" | |
| }, | |
| "allOf": [ | |
| { | |
| "$ref": "Product_5_0_0.schema.json#/definitions/AssociatedProductID" | |
| }, | |
| { | |
| "properties": { | |
| "numberOfRooms": { | |
| "description": "The number of rooms associated with this hospitality product.", | |
| "type": "integer", | |
| "format": "int32" | |
| }, | |
| "RoomStay": { | |
| "description": "Assigned Type: ph-0200:RoomStay", | |
| "$ref": "#/definitions/RoomStayID" | |
| }, | |
| "GuestCount": { | |
| "type": "array", | |
| "items": { | |
| "$ref": "Product_5_0_0.schema.json#/definitions/GuestCount" | |
| }, | |
| "maxItems": 99 | |
| }, | |
| "DateTimeSpanWindows": { | |
| "description": "Assigned Type: ota2-0500:DateTimeSpanWindows", | |
| "$ref": "Common_5_0_0.schema.json#/definitions/DateTimeSpanWindows" | |
| }, | |
| "ExtensionPoint_Custom": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint_Custom" | |
| } | |
| }, | |
| "required": [ | |
| "RoomStay" | |
| ] | |
| } | |
| ] | |
| }, | |
| "ActivityHotel": { | |
| "x-otm-entity": { | |
| "EntityType": "ChoiceObject", | |
| "EntityName": "Activity" | |
| }, | |
| "allOf": [ | |
| { | |
| "$ref": "Product_5_0_0.schema.json#/definitions/Activity" | |
| }, | |
| { | |
| "properties": { | |
| "TODO": { | |
| "description": "TODO Place holder for a hospitality activity object.", | |
| "type": "string", | |
| "maxLength": 512 | |
| }, | |
| "ExtensionPoint": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint" | |
| } | |
| } | |
| } | |
| ] | |
| }, | |
| "ProductQueriesHospitality": { | |
| "x-otm-entity": { | |
| "EntityType": "ChoiceObject", | |
| "EntityName": "ProductQueries" | |
| }, | |
| "allOf": [ | |
| { | |
| "$ref": "Product_5_0_0.schema.json#/definitions/ProductQueries" | |
| }, | |
| { | |
| "properties": { | |
| "RoomStay": { | |
| "description": "Assigned Type: ph-0200:RoomStay", | |
| "$ref": "#/definitions/RoomStayID" | |
| }, | |
| "ExtensionPoint": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint" | |
| } | |
| } | |
| } | |
| ] | |
| }, | |
| "RoomStayID": { | |
| "x-otm-entity": { | |
| "EntityType": "BusinessObject", | |
| "EntityName": "RoomStay" | |
| }, | |
| "properties": { | |
| "@type": { | |
| "type": "string" | |
| }, | |
| "objID": { | |
| "description": "A unique identifier within this document for this object.", | |
| "type": "string" | |
| }, | |
| "Identifier": { | |
| "description": "Assigned Type: ota2-0500:Identifier", | |
| "$ref": "Common_5_0_0.schema.json#/definitions/Identifier" | |
| }, | |
| "RoomStayRef": { | |
| "description": "Refers to the obj ID on an object defined elsewhere in the current document.", | |
| "type": "string" | |
| } | |
| }, | |
| "required": [ | |
| "@type" | |
| ], | |
| "discriminator": "@type" | |
| }, | |
| "RoomStay": { | |
| "x-otm-entity": { | |
| "EntityType": "BusinessObject", | |
| "EntityName": "RoomStay" | |
| }, | |
| "allOf": [ | |
| { | |
| "$ref": "#/definitions/RoomStayID" | |
| }, | |
| { | |
| "properties": { | |
| "invBlockCode": { | |
| "description": "Assigned Type: ota2-0500:StringTiny", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "xyzzy" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 32 | |
| }, | |
| "RoomType": { | |
| "description": "Assigned Type: ph-0200:RoomType", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}RoomTypes" | |
| ] | |
| } | |
| }, | |
| "$ref": "#/definitions/RoomTypeID" | |
| }, | |
| "RatePlan": { | |
| "description": "Assigned Type: ph-0200:RatePlan", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}RatePlans" | |
| ] | |
| } | |
| }, | |
| "$ref": "#/definitions/RatePlan" | |
| }, | |
| "DateTimeSpanWindows": { | |
| "description": "Assigned Type: ota2-0500:DateTimeSpanWindows", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}DateTimeSpanType" | |
| ] | |
| } | |
| }, | |
| "$ref": "Common_5_0_0.schema.json#/definitions/DateTimeSpanWindows" | |
| }, | |
| "SpecialRequest": { | |
| "type": "array", | |
| "items": { | |
| "$ref": "#/definitions/SpecialRequest" | |
| }, | |
| "maxItems": 50 | |
| }, | |
| "FacilityRef": { | |
| "description": "The hotel facility object for the room stay. May include the hotel facility object or a reference to the hotel facility object.", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}BasicPropertyInfo" | |
| ] | |
| } | |
| }, | |
| "type": "string" | |
| }, | |
| "ExtensionPoint_Summary": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint_Summary" | |
| } | |
| }, | |
| "required": [ | |
| "RoomType", | |
| "RatePlan", | |
| "DateTimeSpanWindows" | |
| ] | |
| } | |
| ] | |
| }, | |
| "RoomStayDetail": { | |
| "x-otm-entity": { | |
| "EntityType": "BusinessObject", | |
| "EntityName": "RoomStay" | |
| }, | |
| "allOf": [ | |
| { | |
| "$ref": "#/definitions/RoomStay" | |
| }, | |
| { | |
| "properties": { | |
| "language": { | |
| "description": "Language of the response for the RoomStay (property). Note that the requested language may not be available for all properties and so the language of the response for each property may vary.", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}language" | |
| ] | |
| }, | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "en" | |
| } | |
| ] | |
| }, | |
| "type": "string" | |
| }, | |
| "Comment": { | |
| "type": "array", | |
| "items": { | |
| "$ref": "Common_5_0_0.schema.json#/definitions/Comment" | |
| }, | |
| "maxItems": 10 | |
| }, | |
| "ExtensionPoint_Detail": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint_Detail" | |
| } | |
| } | |
| } | |
| ] | |
| }, | |
| "RoomStayQueryCandidate": { | |
| "x-otm-entity": { | |
| "EntityType": "BusinessObject", | |
| "EntityName": "RoomStay" | |
| }, | |
| "properties": { | |
| "@type": { | |
| "type": "string" | |
| }, | |
| "ArrivalDepartureDates": { | |
| "description": "Assigned Type: ota2-0500:DateEffectiveExpire", | |
| "$ref": "Common_5_0_0.schema.json#/definitions/DateEffectiveExpire" | |
| }, | |
| "BasicPropertyInfo": { | |
| "description": "Assigned Type: ph-0200:BasicPropertyInfo", | |
| "$ref": "#/definitions/BasicPropertyInfo" | |
| }, | |
| "RoomType": { | |
| "description": "Assigned Type: ph-0200:RoomType", | |
| "$ref": "#/definitions/RoomTypeID" | |
| }, | |
| "GuestCount": { | |
| "description": "Assigned Type: prod-0500:GuestCount", | |
| "$ref": "Product_5_0_0.schema.json#/definitions/GuestCount" | |
| }, | |
| "RoomRateQueryRange": { | |
| "description": "Assigned Type: ph-0200:RoomRate_Query_Range", | |
| "$ref": "#/definitions/RoomRateQueryRange" | |
| }, | |
| "ExtensionPoint": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint" | |
| } | |
| }, | |
| "required": [ | |
| "@type" | |
| ], | |
| "discriminator": "@type" | |
| }, | |
| "RoomTypeID": { | |
| "x-otm-entity": { | |
| "EntityType": "BusinessObject", | |
| "EntityName": "RoomType" | |
| }, | |
| "properties": { | |
| "@type": { | |
| "type": "string" | |
| }, | |
| "objID": { | |
| "description": "A unique identifier within this document for this object.", | |
| "type": "string" | |
| } | |
| }, | |
| "required": [ | |
| "@type" | |
| ], | |
| "discriminator": "@type" | |
| }, | |
| "RoomType": { | |
| "x-otm-entity": { | |
| "EntityType": "BusinessObject", | |
| "EntityName": "RoomType" | |
| }, | |
| "allOf": [ | |
| { | |
| "$ref": "#/definitions/RoomTypeID" | |
| }, | |
| { | |
| "properties": { | |
| "RoomCharacteristics": { | |
| "description": "Assigned Type: ph-0200:RoomCharacteristics", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "AttributeGroup: RoomGroup" | |
| ] | |
| } | |
| }, | |
| "$ref": "#/definitions/RoomCharacteristics" | |
| }, | |
| "Description": { | |
| "description": "Assigned Type: ota2-0500:Description", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}ParagraphType" | |
| ] | |
| } | |
| }, | |
| "$ref": "Common_5_0_0.schema.json#/definitions/Description" | |
| }, | |
| "Amenity": { | |
| "type": "array", | |
| "items": { | |
| "$ref": "Common_5_0_0.schema.json#/definitions/Amenity" | |
| }, | |
| "maxItems": 1000 | |
| }, | |
| "RoomOccupancy": { | |
| "type": "array", | |
| "items": { | |
| "$ref": "#/definitions/RoomOccupancy" | |
| }, | |
| "maxItems": 10 | |
| }, | |
| "Code": { | |
| "description": "Assigned Type: ota2-0500:Code", | |
| "$ref": "Common_5_0_0.schema.json#/definitions/Code" | |
| }, | |
| "Tier": { | |
| "description": "TODO: Create enumerated list. Indicates the category of the room. Typical values would be Moderate, Standard, or Deluxe. Refer to OpenTravel Code List Segment Category Code (SEG).", | |
| "type": "string", | |
| "pattern": "[0-9A-Z]{1,4}(\\.[A-Z]{3}(\\.X){0,1}){0,1}" | |
| }, | |
| "RoomAmenities": { | |
| "type": "array", | |
| "items": { | |
| "$ref": "Common_5_0_0.schema.json#/definitions/Code" | |
| }, | |
| "maxItems": 100 | |
| }, | |
| "ExtensionPoint": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint" | |
| } | |
| } | |
| } | |
| ] | |
| }, | |
| "RatePlan": { | |
| "x-otm-entity": { | |
| "EntityType": "CoreObject", | |
| "EntityName": "RatePlan" | |
| }, | |
| "properties": { | |
| "@type": { | |
| "type": "string" | |
| }, | |
| "ratePlanID": { | |
| "description": "Assigned Type: ota2-0500:StringShort", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to64" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "RatePlanID" | |
| } | |
| ], | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "AAAB" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 128 | |
| }, | |
| "ratePlanName": { | |
| "description": "Assigned Type: ota2-0500:StringShort", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to64" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "RatePlanName" | |
| } | |
| ], | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "AAA with Breakfast" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 128 | |
| }, | |
| "Description": { | |
| "description": "Assigned Type: ota2-0500:Description", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}ParagraphType" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "" | |
| } | |
| ], | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "" | |
| } | |
| ] | |
| }, | |
| "$ref": "Common_5_0_0.schema.json#/definitions/Description" | |
| }, | |
| "RatePlanInclusions": { | |
| "type": "array", | |
| "items": { | |
| "$ref": "#/definitions/RatePlanInclusions" | |
| }, | |
| "maxItems": 50 | |
| }, | |
| "RatePlanCode": { | |
| "description": "Assigned Type: ph-0200:RatePlanCode", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to16" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "RatePlanCode" | |
| } | |
| ] | |
| }, | |
| "$ref": "#/definitions/RatePlanCode" | |
| }, | |
| "RatePlanType": { | |
| "description": "Assigned Type: ota2-0400:RatePlanType_Enum", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "RatePlanType" | |
| } | |
| ] | |
| }, | |
| "$ref": "CodeList_4_0_0.schema.json#/definitions/RatePlanType_Enum" | |
| }, | |
| "ExtensionPoint_Summary": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint_Summary" | |
| } | |
| }, | |
| "required": [ | |
| "@type" | |
| ], | |
| "discriminator": "@type" | |
| }, | |
| "RatePlanDetail": { | |
| "x-otm-entity": { | |
| "EntityType": "CoreObject", | |
| "EntityName": "RatePlan" | |
| }, | |
| "allOf": [ | |
| { | |
| "$ref": "#/definitions/RatePlan" | |
| }, | |
| { | |
| "properties": { | |
| "Commission": { | |
| "description": "Assigned Type: ph-0200:Commission", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}CommissionType" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "Commission" | |
| } | |
| ] | |
| }, | |
| "$ref": "#/definitions/Commission" | |
| }, | |
| "ExtensionPoint_Detail": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint_Detail" | |
| } | |
| } | |
| } | |
| ] | |
| }, | |
| "RoomOccupancy": { | |
| "x-otm-entity": { | |
| "EntityType": "CoreObject", | |
| "EntityName": "RoomOccupancy" | |
| }, | |
| "properties": { | |
| "@type": { | |
| "type": "string" | |
| }, | |
| "minOccupancy": { | |
| "description": "Assigned Type: ota2-0500:NonNegativeInteger", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "1" | |
| } | |
| ] | |
| }, | |
| "type": "integer", | |
| "format": "int32", | |
| "minimum": 0, | |
| "exclusiveMinimum": false | |
| }, | |
| "maxOccupancy": { | |
| "description": "Assigned Type: ota2-0500:NonNegativeInteger", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "4" | |
| } | |
| ] | |
| }, | |
| "type": "integer", | |
| "format": "int32", | |
| "minimum": 0, | |
| "exclusiveMinimum": false | |
| }, | |
| "standardOccupancy": { | |
| "description": "Assigned Type: ota2-0500:NonNegativeInteger", | |
| "type": "integer", | |
| "format": "int32", | |
| "minimum": 0, | |
| "exclusiveMinimum": false | |
| }, | |
| "AgeQualifying": { | |
| "type": "array", | |
| "items": { | |
| "$ref": "CodeList_4_0_0.schema.json#/definitions/AgeQualifyingCode_Enum" | |
| }, | |
| "maxItems": 20 | |
| }, | |
| "ExtensionPoint": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint" | |
| } | |
| }, | |
| "required": [ | |
| "@type" | |
| ], | |
| "discriminator": "@type" | |
| }, | |
| "SpecialRequest": { | |
| "x-otm-entity": { | |
| "EntityType": "ValueWithAttributes", | |
| "EntityName": "SpecialRequest" | |
| }, | |
| "description": "This identifies a special request for this reservation and is typically hotel-specific.", | |
| "properties": { | |
| "numberOfUnits": { | |
| "description": "Allows you to pass the number of units that the special request is for (e.g., if 4 rooms are booked you may want 3 with double\\/double beds and 1 with a king).", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}integer" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "NumberOfUnits" | |
| } | |
| ], | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "1" | |
| } | |
| ] | |
| }, | |
| "type": "integer", | |
| "format": "int32" | |
| } | |
| } | |
| }, | |
| "RatePlanInclusions": { | |
| "x-otm-entity": { | |
| "EntityType": "CoreObject", | |
| "EntityName": "RatePlanInclusions" | |
| }, | |
| "properties": { | |
| "@type": { | |
| "type": "string" | |
| }, | |
| "Description": { | |
| "description": "Assigned Type: ota2-0500:Description", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}ParagraphType" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "RatePlanInclusionDesciption" | |
| } | |
| ] | |
| }, | |
| "$ref": "Common_5_0_0.schema.json#/definitions/Description" | |
| }, | |
| "MealsIncluded": { | |
| "description": "Assigned Type: prod-0500:MealsIncluded", | |
| "$ref": "Product_5_0_0.schema.json#/definitions/MealsIncluded" | |
| }, | |
| "taxInclusiveInd": { | |
| "description": "Indicates that tax is included in the rate.", | |
| "type": "boolean" | |
| }, | |
| "serviceFeeInclusiveInd": { | |
| "description": "Indicates that service fees are included in the rate.", | |
| "type": "boolean" | |
| }, | |
| "ExtensionPoint": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/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": "CodeList_4_0_0.schema.json#/definitions/RatePlanType_Enum_Base" | |
| }, | |
| "ratePlanTypeExtension": { | |
| "type": "string", | |
| "maxLength": 128, | |
| "minLength": 1 | |
| }, | |
| "ratePlanID": { | |
| "description": "Assigned Type: ota2-0500: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-0500: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-0500:StringTiny", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "L9Z" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 32 | |
| }, | |
| "promotionVendorCode": { | |
| "description": "Assigned Type: ota2-0500: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" | |
| } | |
| } | |
| }, | |
| "Commission": { | |
| "x-otm-entity": { | |
| "EntityType": "CoreObject", | |
| "EntityName": "Commission" | |
| }, | |
| "properties": { | |
| "@type": { | |
| "type": "string" | |
| }, | |
| "percent": { | |
| "description": "Assigned Type: ota2-0500:Percent", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}Percentage" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "Percent" | |
| } | |
| ], | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "10" | |
| } | |
| ] | |
| }, | |
| "type": "number", | |
| "format": "float", | |
| "maximum": 100.0, | |
| "exclusiveMaximum": false, | |
| "minimum": 0.0, | |
| "exclusiveMinimum": false | |
| }, | |
| "reasonCode": { | |
| "description": "Assigned Type: ota2-0500:StringTiny", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to8" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "ReasonCode" | |
| } | |
| ], | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "No Show" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 32 | |
| }, | |
| "maxCommissionUnitApplies": { | |
| "description": "Maximum number of units for which the commission will be applied. This may be used in conjunction with the frequency attribute.", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}positiveInteger" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "MaxCommissionUnitApplies" | |
| } | |
| ], | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "5" | |
| } | |
| ] | |
| }, | |
| "type": "integer", | |
| "format": "int32" | |
| }, | |
| "capAmount": { | |
| "description": "Assigned Type: ota2-0500:Money", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}Money" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "CapAmount" | |
| } | |
| ], | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "100.00" | |
| } | |
| ] | |
| }, | |
| "type": "number", | |
| "format": "float" | |
| }, | |
| "CurrencyCode": { | |
| "description": "Indicates the currency to be applied to the amounts located in the child elements.", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "AttributeGroup: CurrencyCodeGroup" | |
| ] | |
| }, | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "USD" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "pattern": "[a-zA-Z]{3}" | |
| }, | |
| "Frequency": { | |
| "description": "Assigned Type: ota2-0400:ChargeUnit_Enum", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}OTA_CodeType" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "Frequency" | |
| } | |
| ], | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "" | |
| } | |
| ] | |
| }, | |
| "$ref": "CodeList_4_0_0.schema.json#/definitions/ChargeUnit_Enum" | |
| }, | |
| "PersonIdentifier": { | |
| "description": "Assigned Type: ota2-0500:Person_ID", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}UniqueID_Type" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "UniqueID" | |
| } | |
| ] | |
| }, | |
| "$ref": "Common_5_0_0.schema.json#/definitions/PersonID" | |
| }, | |
| "CommissionableAmount": { | |
| "description": "Assigned Type: ph-0200:CommissionableAmount", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}CommissionableAmount" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "CommissionableAmount" | |
| } | |
| ] | |
| }, | |
| "$ref": "#/definitions/CommissionableAmount" | |
| }, | |
| "PrepaidAmount": { | |
| "description": "Assigned Type: ota2-0500:CurrencyAmount", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}PrepaidAmount" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "PrepaidAmount" | |
| } | |
| ] | |
| }, | |
| "$ref": "Common_5_0_0.schema.json#/definitions/CurrencyAmount" | |
| }, | |
| "FlatCommission": { | |
| "description": "Assigned Type: ota2-0500:CurrencyAmount", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}FlatCommission" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "FlatCommission" | |
| } | |
| ] | |
| }, | |
| "$ref": "Common_5_0_0.schema.json#/definitions/CurrencyAmount" | |
| }, | |
| "PayableAmount": { | |
| "description": "Assigned Type: ota2-0500:CurrencyAmount", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}CommissionPayableAmount" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "CommissionPayableAmount" | |
| } | |
| ] | |
| }, | |
| "$ref": "Common_5_0_0.schema.json#/definitions/CurrencyAmount" | |
| }, | |
| "Comment": { | |
| "description": "Assigned Type: ota2-0500:Comment", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}ParagraphType" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "Comment" | |
| } | |
| ] | |
| }, | |
| "$ref": "Common_5_0_0.schema.json#/definitions/Comment" | |
| }, | |
| "StatusType": { | |
| "description": "Assigned Type: ota2-0400:Status_Enum", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "LocalAnonymousType: CommissionType_StatusType" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "StatusType" | |
| } | |
| ] | |
| }, | |
| "$ref": "CodeList_4_0_0.schema.json#/definitions/Status_Enum" | |
| }, | |
| "BillToID": { | |
| "description": "Assigned Type: ota2-0500:Identifier", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength1to8" | |
| ] | |
| }, | |
| "equivalents": [ | |
| { | |
| "context": "ph", | |
| "value": "BillToID" | |
| } | |
| ] | |
| }, | |
| "$ref": "Common_5_0_0.schema.json#/definitions/Identifier" | |
| }, | |
| "ExtensionPoint": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint" | |
| } | |
| }, | |
| "required": [ | |
| "@type" | |
| ], | |
| "discriminator": "@type" | |
| }, | |
| "CommissionableAmount": { | |
| "x-otm-entity": { | |
| "EntityType": "CoreObject", | |
| "EntityName": "CommissionableAmount" | |
| }, | |
| "properties": { | |
| "@type": { | |
| "type": "string" | |
| }, | |
| "CurrencyAmount": { | |
| "description": "Assigned Type: ota2-0500:CurrencyAmount", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "AttributeGroup: CurrencyAmountGroup" | |
| ] | |
| } | |
| }, | |
| "$ref": "Common_5_0_0.schema.json#/definitions/CurrencyAmount" | |
| }, | |
| "ttaxInclusiveInd": { | |
| "description": "When true, indicates that the commission is calculated using the rate including tax. When false, indicates that the commission is calculated using the net rate.", | |
| "type": "boolean" | |
| }, | |
| "ExtensionPoint": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint" | |
| } | |
| }, | |
| "required": [ | |
| "@type" | |
| ], | |
| "discriminator": "@type" | |
| }, | |
| "RoomCharacteristics": { | |
| "x-otm-entity": { | |
| "EntityType": "CoreObject", | |
| "EntityName": "RoomCharacteristics" | |
| }, | |
| "properties": { | |
| "@type": { | |
| "type": "string" | |
| }, | |
| "LocationCode": { | |
| "description": "Assigned Type: ota2-0400:RoomLocation_Enum", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}OTA_CodeType" | |
| ] | |
| } | |
| }, | |
| "$ref": "CodeList_4_0_0.schema.json#/definitions/RoomLocation_Enum" | |
| }, | |
| "BedTypeCode": { | |
| "description": "Assigned Type: ota2-0400:BedType_Enum", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}ListOfOTA_CodeType" | |
| ] | |
| } | |
| }, | |
| "$ref": "CodeList_4_0_0.schema.json#/definitions/BedType_Enum" | |
| }, | |
| "Category": { | |
| "description": "Assigned Type: ota2-0400:SegmentCategory_Enum", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}OTA_CodeType" | |
| ] | |
| } | |
| }, | |
| "$ref": "CodeList_4_0_0.schema.json#/definitions/SegmentCategory_Enum" | |
| }, | |
| "ClassificationCode": { | |
| "description": "Assigned Type: ota2-0400:GuestRoomInfo_Enum", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}OTA_CodeType" | |
| ] | |
| } | |
| }, | |
| "$ref": "CodeList_4_0_0.schema.json#/definitions/GuestRoomInfo_Enum" | |
| }, | |
| "ViewCode": { | |
| "description": "Assigned Type: ota2-0400:RoomViewType_Enum", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}OTA_CodeType" | |
| ] | |
| } | |
| }, | |
| "$ref": "CodeList_4_0_0.schema.json#/definitions/RoomViewType_Enum" | |
| }, | |
| "FeatureAccessibility": { | |
| "type": "array", | |
| "items": { | |
| "$ref": "Organization_4_0_0.schema.json#/definitions/FeatureAccessibility" | |
| }, | |
| "maxItems": 100 | |
| }, | |
| "FeatureSecurity": { | |
| "type": "array", | |
| "items": { | |
| "$ref": "Organization_4_0_0.schema.json#/definitions/FeatureSecurity" | |
| }, | |
| "maxItems": 100 | |
| }, | |
| "nonSmokingInd": { | |
| "description": "Non-smoking indicator.", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}boolean" | |
| ] | |
| } | |
| }, | |
| "type": "boolean" | |
| }, | |
| "compositeInd": { | |
| "description": "Indicates that the room (suite) is a composite of smaller units.", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}boolean" | |
| ] | |
| } | |
| }, | |
| "type": "boolean" | |
| }, | |
| "ExtensionPoint_Summary": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint_Summary" | |
| } | |
| }, | |
| "required": [ | |
| "@type" | |
| ], | |
| "discriminator": "@type" | |
| }, | |
| "RoomCharacteristicsDetail": { | |
| "x-otm-entity": { | |
| "EntityType": "CoreObject", | |
| "EntityName": "RoomCharacteristics" | |
| }, | |
| "allOf": [ | |
| { | |
| "$ref": "#/definitions/RoomCharacteristics" | |
| }, | |
| { | |
| "properties": { | |
| "gender": { | |
| "description": "Used to request or specify a gender assignment for a room. Note: Typically used by Hosteliers.", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "LocalAnonymousType: RoomGroup_RoomGender" | |
| ] | |
| } | |
| }, | |
| "$ref": "CodeList_4_0_0.schema.json#/definitions/Gender_Enum" | |
| }, | |
| "invBlockCode": { | |
| "description": "Assigned Type: ota2-0500:StringTiny", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to32" | |
| ] | |
| } | |
| }, | |
| "type": "string", | |
| "maxLength": 32 | |
| }, | |
| "architectureCode": { | |
| "description": "Assigned Type: ota2-0500: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}" | |
| }, | |
| "floor": { | |
| "description": "Floor on which the room is located.", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}Numeric1to999" | |
| ] | |
| } | |
| }, | |
| "type": "integer", | |
| "format": "int32" | |
| }, | |
| "typeCode": { | |
| "description": "Assigned Type: ota2-0500:StringTiny", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}StringLength1to16" | |
| ] | |
| } | |
| }, | |
| "type": "string", | |
| "maxLength": 32 | |
| }, | |
| "sizeMeasurement": { | |
| "description": "Textual description of room dimensions.", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}string" | |
| ] | |
| } | |
| }, | |
| "type": "string" | |
| }, | |
| "numberOfBedrooms": { | |
| "description": "The number of bedrooms in the unit.", | |
| "type": "integer", | |
| "format": "int32" | |
| }, | |
| "numberOfBathrooms": { | |
| "description": "The number of bathrooms in the unit.", | |
| "type": "integer", | |
| "format": "int32" | |
| }, | |
| "unitNumber": { | |
| "description": "Assigned Type: ota2-0500:StringTiny", | |
| "type": "string", | |
| "maxLength": 32 | |
| }, | |
| "sharedRoomInd": { | |
| "description": "If TRUE, the room requires or has sharing available. Note: Typically used by Hosteliers.", | |
| "x-otm-annotations": { | |
| "documentation": { | |
| "implementers": [ | |
| "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}boolean" | |
| ] | |
| } | |
| }, | |
| "type": "boolean" | |
| }, | |
| "ExtensionPoint_Detail": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint_Detail" | |
| } | |
| } | |
| } | |
| ] | |
| }, | |
| "AccessibilityFeature": { | |
| "x-otm-entity": { | |
| "EntityType": "CoreObject", | |
| "EntityName": "AccessibilityFeature" | |
| }, | |
| "properties": { | |
| "@type": { | |
| "type": "string" | |
| }, | |
| "quantity": { | |
| "description": "The quantity of this feature in the room.", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "2" | |
| } | |
| ] | |
| }, | |
| "type": "integer", | |
| "format": "int32" | |
| }, | |
| "description": { | |
| "description": "Assigned Type: ota2-0500:StringLong", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "Door locks at wheelchair height." | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 4096 | |
| }, | |
| "AccessibilityFeature": { | |
| "description": "Assigned Type: ota2-0400:DisabilityFeature_Enum", | |
| "$ref": "CodeList_4_0_0.schema.json#/definitions/DisabilityFeature_Enum" | |
| }, | |
| "ExtensionPoint": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint" | |
| } | |
| }, | |
| "required": [ | |
| "@type" | |
| ], | |
| "discriminator": "@type" | |
| }, | |
| "SecurityFeature": { | |
| "x-otm-entity": { | |
| "EntityType": "CoreObject", | |
| "EntityName": "SecurityFeature" | |
| }, | |
| "properties": { | |
| "@type": { | |
| "type": "string" | |
| }, | |
| "quantity": { | |
| "description": "The quantity of this feature in the room.", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "1" | |
| } | |
| ] | |
| }, | |
| "type": "integer", | |
| "format": "int32" | |
| }, | |
| "description": { | |
| "description": "Assigned Type: ota2-0500:StringLong", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "Smoke alarm in room." | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 4096 | |
| }, | |
| "SecurityFeature": { | |
| "description": "Assigned Type: ota2-0400:SecurityFeature_Enum", | |
| "$ref": "CodeList_4_0_0.schema.json#/definitions/SecurityFeature_Enum" | |
| }, | |
| "ExtensionPoint": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint" | |
| } | |
| }, | |
| "required": [ | |
| "@type" | |
| ], | |
| "discriminator": "@type" | |
| }, | |
| "HospitalityOffersID": { | |
| "x-otm-entity": { | |
| "EntityType": "BusinessObject", | |
| "EntityName": "HospitalityOffers" | |
| }, | |
| "properties": { | |
| "@type": { | |
| "type": "string" | |
| }, | |
| "objID": { | |
| "description": "A unique identifier within this document for this object.", | |
| "type": "string" | |
| }, | |
| "Identifier": { | |
| "description": "Assigned Type: ota2-0500:Identifier", | |
| "$ref": "Common_5_0_0.schema.json#/definitions/Identifier" | |
| }, | |
| "HospitalityOffersRef": { | |
| "description": "Refers to the obj ID on an object defined elsewhere in the current document.", | |
| "type": "string" | |
| } | |
| }, | |
| "required": [ | |
| "@type" | |
| ], | |
| "discriminator": "@type" | |
| }, | |
| "HospitalityOffers": { | |
| "x-otm-entity": { | |
| "EntityType": "BusinessObject", | |
| "EntityName": "HospitalityOffers" | |
| }, | |
| "allOf": [ | |
| { | |
| "$ref": "#/definitions/HospitalityOffersID" | |
| }, | |
| { | |
| "properties": { | |
| "FacilityIdentifier": { | |
| "description": "Assigned Type: org-0400:Facility_ID", | |
| "$ref": "Organization_4_0_0.schema.json#/definitions/FacilityID" | |
| }, | |
| "Offer": { | |
| "type": "array", | |
| "items": { | |
| "$ref": "Order_4_0_0.schema.json#/definitions/OfferID" | |
| } | |
| }, | |
| "ReferenceListProduct": { | |
| "description": "Assigned Type: ota2-0500:ReferenceList_Product", | |
| "$ref": "Common_5_0_0.schema.json#/definitions/ReferenceListProduct" | |
| }, | |
| "ExtensionPoint": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint" | |
| } | |
| }, | |
| "required": [ | |
| "FacilityIdentifier" | |
| ] | |
| } | |
| ] | |
| }, | |
| "RoomRateID": { | |
| "x-otm-entity": { | |
| "EntityType": "BusinessObject", | |
| "EntityName": "RoomRate" | |
| }, | |
| "properties": { | |
| "@type": { | |
| "type": "string" | |
| }, | |
| "objID": { | |
| "description": "A unique identifier within this document for this object.", | |
| "type": "string" | |
| }, | |
| "Identifier": { | |
| "description": "Assigned Type: ota2-0500:Identifier", | |
| "$ref": "Common_5_0_0.schema.json#/definitions/Identifier" | |
| }, | |
| "RoomRateRef": { | |
| "description": "Refers to the objID on an object defined elsewhere in the current document.", | |
| "type": "string" | |
| } | |
| }, | |
| "required": [ | |
| "@type" | |
| ], | |
| "discriminator": "@type" | |
| }, | |
| "RoomRate": { | |
| "x-otm-entity": { | |
| "EntityType": "BusinessObject", | |
| "EntityName": "RoomRate" | |
| }, | |
| "allOf": [ | |
| { | |
| "$ref": "#/definitions/RoomRateID" | |
| }, | |
| { | |
| "properties": { | |
| "effectiveDate": { | |
| "description": "Specifies the starting date for this room rate.", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "2017-08-22" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "format": "date" | |
| }, | |
| "expireDate": { | |
| "description": "Specifies the end date for this room rate.", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "2018-08-22" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "format": "date" | |
| }, | |
| "bookingCode": { | |
| "description": "Assigned Type: ota2-0500:StringTiny", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "A1KRACKB" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 32 | |
| }, | |
| "Rate": { | |
| "description": "Assigned Type: ota2-0500:RoomPrice", | |
| "$ref": "Common_5_0_0.schema.json#/definitions/RoomPrice" | |
| }, | |
| "expireDateExclusiveInd": { | |
| "description": "When true, the ExpireDate is the first day after the applicable period (e.g. when expire date is Oct 15 the last date of the period is Oct 14).", | |
| "type": "boolean" | |
| }, | |
| "ExtensionPoint_Summary": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint_Summary" | |
| } | |
| }, | |
| "required": [ | |
| "effectiveDate" | |
| ] | |
| } | |
| ] | |
| }, | |
| "RoomRateDetail": { | |
| "x-otm-entity": { | |
| "EntityType": "BusinessObject", | |
| "EntityName": "RoomRate" | |
| }, | |
| "allOf": [ | |
| { | |
| "$ref": "#/definitions/RoomRate" | |
| }, | |
| { | |
| "properties": { | |
| "source": { | |
| "description": "Assigned Type: ota2-0500:StringShort", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "Promotion" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 128 | |
| }, | |
| "Taxes": { | |
| "description": "Assigned Type: ota2-0500:Taxes_Summary", | |
| "$ref": "Common_5_0_0.schema.json#/definitions/Taxes" | |
| }, | |
| "Fees": { | |
| "description": "Assigned Type: ota2-0500:Fees_Summary", | |
| "$ref": "Common_5_0_0.schema.json#/definitions/Fees" | |
| }, | |
| "ExtensionPoint_Detail": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint_Detail" | |
| } | |
| } | |
| } | |
| ] | |
| }, | |
| "RoomRateQueryRange": { | |
| "x-otm-entity": { | |
| "EntityType": "BusinessObject", | |
| "EntityName": "RoomRate" | |
| }, | |
| "properties": { | |
| "@type": { | |
| "type": "string" | |
| }, | |
| "StartRate": { | |
| "description": "Assigned Type: ota2-0500:RoomPrice", | |
| "$ref": "Common_5_0_0.schema.json#/definitions/RoomPrice" | |
| }, | |
| "EndRate": { | |
| "description": "Assigned Type: ota2-0500:RoomPrice", | |
| "$ref": "Common_5_0_0.schema.json#/definitions/RoomPrice" | |
| }, | |
| "ExtensionPoint": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint" | |
| } | |
| }, | |
| "required": [ | |
| "@type" | |
| ], | |
| "discriminator": "@type" | |
| }, | |
| "BasicPropertyInfo": { | |
| "x-otm-entity": { | |
| "EntityType": "CoreObject", | |
| "EntityName": "BasicPropertyInfo" | |
| }, | |
| "properties": { | |
| "@type": { | |
| "type": "string" | |
| }, | |
| "code": { | |
| "description": "Assigned Type: ota2-0500:StringTiny", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "WASJW" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 32 | |
| }, | |
| "name": { | |
| "description": "Assigned Type: ota2-0500:StringShort", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "JW Marriott Washington DC" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 128 | |
| }, | |
| "chainCode": { | |
| "description": "Assigned Type: ota2-0500:StringTiny", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "MC" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 32 | |
| }, | |
| "brandCode": { | |
| "description": "Assigned Type: ota2-0500:StringTiny", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "FS" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 32 | |
| }, | |
| "cityCode": { | |
| "description": "Assigned Type: ota2-0500:StringTiny", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "WAS" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 32 | |
| }, | |
| "ExtensionPoint_Summary": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint_Summary" | |
| } | |
| }, | |
| "required": [ | |
| "@type" | |
| ], | |
| "discriminator": "@type" | |
| }, | |
| "Site": { | |
| "x-otm-entity": { | |
| "EntityType": "CoreObject", | |
| "EntityName": "BasicPropertyInfo" | |
| }, | |
| "properties": { | |
| "@type": { | |
| "type": "string" | |
| }, | |
| "code": { | |
| "description": "Assigned Type: ota2-0500:StringTiny", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "WASJW" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 32 | |
| }, | |
| "name": { | |
| "description": "Assigned Type: ota2-0500:StringShort", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "JW Marriott Washington DC" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 128 | |
| }, | |
| "chainCode": { | |
| "description": "Assigned Type: ota2-0500:StringTiny", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "MC" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 32 | |
| }, | |
| "brandCode": { | |
| "description": "Assigned Type: ota2-0500:StringTiny", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "FS" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 32 | |
| }, | |
| "cityCode": { | |
| "description": "Assigned Type: ota2-0500:StringTiny", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "WAS" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 32 | |
| }, | |
| "ExtensionPoint_Summary": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint_Summary" | |
| } | |
| }, | |
| "required": [ | |
| "@type" | |
| ], | |
| "discriminator": "@type" | |
| }, | |
| "BasicPropertyInfoDetail": { | |
| "x-otm-entity": { | |
| "EntityType": "CoreObject", | |
| "EntityName": "BasicPropertyInfo" | |
| }, | |
| "allOf": [ | |
| { | |
| "$ref": "#/definitions/BasicPropertyInfo" | |
| }, | |
| { | |
| "properties": { | |
| "nameShort": { | |
| "description": "Assigned Type: ota2-0500:StringShort", | |
| "type": "string", | |
| "maxLength": 128 | |
| }, | |
| "chainName": { | |
| "description": "Assigned Type: ota2-0500:StringShort", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "Marriott" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 128 | |
| }, | |
| "brandName": { | |
| "description": "Assigned Type: ota2-0500:StringShort", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "Full Service" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 128 | |
| }, | |
| "areaID": { | |
| "description": "Assigned Type: ota2-0500:String", | |
| "type": "string", | |
| "maxLength": 512 | |
| }, | |
| "hotelCode_TTI": { | |
| "description": "Assigned Type: ota2-0500:NonNegativeInteger", | |
| "type": "integer", | |
| "format": "int32", | |
| "minimum": 0, | |
| "exclusiveMinimum": false | |
| }, | |
| "hotelCodeContext": { | |
| "description": "Assigned Type: ota2-0500:StringShort", | |
| "type": "string", | |
| "maxLength": 128 | |
| }, | |
| "ExtensionPoint_Detail": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint_Detail" | |
| } | |
| } | |
| } | |
| ] | |
| }, | |
| "SiteDetail": { | |
| "x-otm-entity": { | |
| "EntityType": "CoreObject", | |
| "EntityName": "BasicPropertyInfo" | |
| }, | |
| "allOf": [ | |
| { | |
| "$ref": "#/definitions/Site" | |
| }, | |
| { | |
| "properties": { | |
| "nameShort": { | |
| "description": "Assigned Type: ota2-0500:StringShort", | |
| "type": "string", | |
| "maxLength": 128 | |
| }, | |
| "chainName": { | |
| "description": "Assigned Type: ota2-0500:StringShort", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "Marriott" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 128 | |
| }, | |
| "brandName": { | |
| "description": "Assigned Type: ota2-0500:StringShort", | |
| "x-otm-annotations": { | |
| "examples": [ | |
| { | |
| "context": "ph", | |
| "value": "Full Service" | |
| } | |
| ] | |
| }, | |
| "type": "string", | |
| "maxLength": 128 | |
| }, | |
| "areaID": { | |
| "description": "Assigned Type: ota2-0500:String", | |
| "type": "string", | |
| "maxLength": 512 | |
| }, | |
| "hotelCode_TTI": { | |
| "description": "Assigned Type: ota2-0500:NonNegativeInteger", | |
| "type": "integer", | |
| "format": "int32", | |
| "minimum": 0, | |
| "exclusiveMinimum": false | |
| }, | |
| "hotelCodeContext": { | |
| "description": "Assigned Type: ota2-0500:StringShort", | |
| "type": "string", | |
| "maxLength": 128 | |
| }, | |
| "ExtensionPoint_Detail": { | |
| "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint_Detail" | |
| } | |
| } | |
| } | |
| ] | |
| } | |
| }, | |
| "oneOf": [ | |
| { | |
| "properties": { | |
| "ProductHospitality": { | |
| "$ref": "#/definitions/ProductHospitality" | |
| } | |
| }, | |
| "required": [ | |
| "ProductHospitality" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "AssociatedProductHospitality": { | |
| "$ref": "#/definitions/ProductHospitality" | |
| } | |
| }, | |
| "required": [ | |
| "AssociatedProductHospitality" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "ActivityHotel": { | |
| "$ref": "#/definitions/ActivityHotel" | |
| } | |
| }, | |
| "required": [ | |
| "ActivityHotel" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "ProductQueriesHospitality": { | |
| "$ref": "#/definitions/ProductQueriesHospitality" | |
| } | |
| }, | |
| "required": [ | |
| "ProductQueriesHospitality" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "RoomStayIdentifier": { | |
| "$ref": "#/definitions/RoomStayID" | |
| } | |
| }, | |
| "required": [ | |
| "RoomStayIdentifier" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "RoomStaySummary": { | |
| "$ref": "#/definitions/RoomStay" | |
| } | |
| }, | |
| "required": [ | |
| "RoomStaySummary" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "RoomStayDetail": { | |
| "$ref": "#/definitions/RoomStayDetail" | |
| } | |
| }, | |
| "required": [ | |
| "RoomStayDetail" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "RoomStayQueryCandidate": { | |
| "$ref": "#/definitions/RoomStayQueryCandidate" | |
| } | |
| }, | |
| "required": [ | |
| "RoomStayQueryCandidate" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "RoomTypeIdentifier": { | |
| "$ref": "#/definitions/RoomTypeID" | |
| } | |
| }, | |
| "required": [ | |
| "RoomTypeIdentifier" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "RoomTypeSummary": { | |
| "$ref": "#/definitions/RoomType" | |
| } | |
| }, | |
| "required": [ | |
| "RoomTypeSummary" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "RatePlanSummary": { | |
| "$ref": "#/definitions/RatePlan" | |
| } | |
| }, | |
| "required": [ | |
| "RatePlanSummary" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "RatePlanDetail": { | |
| "$ref": "#/definitions/RatePlanDetail" | |
| } | |
| }, | |
| "required": [ | |
| "RatePlanDetail" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "RoomOccupancy": { | |
| "$ref": "#/definitions/RoomOccupancy" | |
| } | |
| }, | |
| "required": [ | |
| "RoomOccupancy" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "RatePlanInclusions": { | |
| "$ref": "#/definitions/RatePlanInclusions" | |
| } | |
| }, | |
| "required": [ | |
| "RatePlanInclusions" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "Commission": { | |
| "$ref": "#/definitions/Commission" | |
| } | |
| }, | |
| "required": [ | |
| "Commission" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "CommissionableAmount": { | |
| "$ref": "#/definitions/CommissionableAmount" | |
| } | |
| }, | |
| "required": [ | |
| "CommissionableAmount" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "RoomCharacteristicsSummary": { | |
| "$ref": "#/definitions/RoomCharacteristics" | |
| } | |
| }, | |
| "required": [ | |
| "RoomCharacteristicsSummary" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "RoomCharacteristicsDetail": { | |
| "$ref": "#/definitions/RoomCharacteristicsDetail" | |
| } | |
| }, | |
| "required": [ | |
| "RoomCharacteristicsDetail" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "AccessibilityFeature": { | |
| "$ref": "#/definitions/AccessibilityFeature" | |
| } | |
| }, | |
| "required": [ | |
| "AccessibilityFeature" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "SecurityFeature": { | |
| "$ref": "#/definitions/SecurityFeature" | |
| } | |
| }, | |
| "required": [ | |
| "SecurityFeature" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "HospitalityOffersIdentifier": { | |
| "$ref": "#/definitions/HospitalityOffersID" | |
| } | |
| }, | |
| "required": [ | |
| "HospitalityOffersIdentifier" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "HospitalityOffersSummary": { | |
| "$ref": "#/definitions/HospitalityOffers" | |
| } | |
| }, | |
| "required": [ | |
| "HospitalityOffersSummary" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "RoomRateIdentifier": { | |
| "$ref": "#/definitions/RoomRateID" | |
| } | |
| }, | |
| "required": [ | |
| "RoomRateIdentifier" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "RoomRateSummary": { | |
| "$ref": "#/definitions/RoomRate" | |
| } | |
| }, | |
| "required": [ | |
| "RoomRateSummary" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "RoomRateDetail": { | |
| "$ref": "#/definitions/RoomRateDetail" | |
| } | |
| }, | |
| "required": [ | |
| "RoomRateDetail" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "RoomRateQueryRange": { | |
| "$ref": "#/definitions/RoomRateQueryRange" | |
| } | |
| }, | |
| "required": [ | |
| "RoomRateQueryRange" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "BasicPropertyInfoSummary": { | |
| "$ref": "#/definitions/BasicPropertyInfo" | |
| } | |
| }, | |
| "required": [ | |
| "BasicPropertyInfoSummary" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "SiteSummary": { | |
| "$ref": "#/definitions/BasicPropertyInfo" | |
| } | |
| }, | |
| "required": [ | |
| "SiteSummary" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "BasicPropertyInfoDetail": { | |
| "$ref": "#/definitions/BasicPropertyInfoDetail" | |
| } | |
| }, | |
| "required": [ | |
| "BasicPropertyInfoDetail" | |
| ] | |
| }, | |
| { | |
| "properties": { | |
| "SiteDetail": { | |
| "$ref": "#/definitions/BasicPropertyInfoDetail" | |
| } | |
| }, | |
| "required": [ | |
| "SiteDetail" | |
| ] | |
| } | |
| ] | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment