Common

TravelUnited StatesStandardsAviationHospitalityHotelsCar RentalRailCruiseDistributionGDSBookingChannelXMLJSON-Schema
View JSON Schema on GitHub

JSON Schema

opentravel-2020a-common-5-0-0-trim.schema.json Raw ↑
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "title": "Common",
  "x-otm-library": {
    "LibraryName": "Common",
    "LibraryVersion": "5.0.0",
    "LibraryStatus": "FINAL",
    "SourceFile": "/Common_5_0_0.otm",
    "CompilerVersion": "4.0-SNAPSHOT",
    "CompileDate": "2020-05-15T11:16:19.169-0500"
  },
  "definitions": {
    "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"
      },
      "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-0500: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-0500: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-0500: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-0500: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-0500: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-0500: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-0500: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-0500: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-0500:StringTiny",
          "type": "string",
          "maxLength": 32
        },
        "description": {
          "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
        },
        "listURI": {
          "description": "Assigned Type: ota2-0500: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-0500: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-0500: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-0500: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-0500: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-0500: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"
        }
      }
    },
    "DateEffectiveExpire": {
      "x-otm-entity": {
        "EntityType": "ValueWithAttributes",
        "EntityName": "DateEffectiveExpire"
      },
      "description": "Used to identify the effective date and\\/or expiration date.",
      "properties": {
        "effective": {
          "description": "Indicates the starting date.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}date"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "EffectiveDate"
              }
            ]
          },
          "type": "string",
          "format": "date"
        },
        "expire": {
          "description": "Indicates the ending date.",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}date"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "ExpireDate"
              }
            ]
          },
          "type": "string",
          "format": "date"
        },
        "expireDateExclusiveInd": {
          "description": "When true, indicates that 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).",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/www.w3.org\\/2001\\/XMLSchema}boolean"
              ]
            },
            "equivalents": [
              {
                "context": "Common",
                "value": "ExpireDateExclusiveInd"
              }
            ]
          },
          "type": "boolean"
        }
      }
    },
    "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-0500:StringShort",
          "x-otm-annotations": {
            "examples": [
              {
                "context": "Common",
                "value": "sysABC3344"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        },
        "organization": {
          "description": "Assigned Type: ota2-0500:StringShort",
          "x-otm-annotations": {
            "examples": [
              {
                "context": "Common",
                "value": "Acme"
              }
            ]
          },
          "type": "string",
          "maxLength": 128
        }
      }
    },
    "PersonName": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "PersonName"
      },
      "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": {
          "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type",
        "Surname"
      ],
      "discriminator": "@type"
    },
    "RelatedTraveler_Simple_Person_Name": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "PersonName"
      },
      "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": {
          "$ref": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint"
        }
      },
      "required": [
        "@type",
        "Surname"
      ],
      "discriminator": "@type"
    },
    "PersonNameDetail": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "PersonName"
      },
      "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-0500: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-0500: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": "built-ins/OTM_BuiltIns.schema.json#/definitions/ExtensionPoint_Detail"
            }
          }
        }
      ]
    },
    "RelatedTraveler_Simple_Person_NameDetail": {
      "x-otm-entity": {
        "EntityType": "CoreObject",
        "EntityName": "PersonName"
      },
      "allOf": [
        {
          "$ref": "#/definitions/RelatedTraveler_Simple_Person_Name"
        },
        {
          "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-0500: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-0500: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": "built-ins/OTM_BuiltIns.schema.json#/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-0500:StringShort",
          "x-otm-annotations": {
            "documentation": {
              "implementers": [
                "Assigned XSD Type: {http:\\/\\/chameleon.anonymous\\/ns}StringLength0to64"
              ]
            },
            "examples": [
              {
                "context": "Common",
                "value": "Texas"
              }
            ]
          },
      

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

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/opentravel-2020a-common-5-0-0-trim.schema"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.