<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:cns="http://www.iata.org/IATA/2015/EASD/00/IATA_OffersAndOrdersCommonTypes" elementFormDefault="qualified" targetNamespace="http://www.iata.org/IATA/2015/EASD/00/IATA_OffersAndOrdersCommonTypes" version="1.0">
  <xs:complexType name="AddlNameType">
    <xs:annotation>
      <xs:documentation>An additional name type.
 The structure consists of a generic proper name with associated type.
 Examples:
 Name - 'Smith'.
 Name Type Code - 'Fathers Surname'.
 Name - 'Park'.
 Name Type Code - 'Mothers Surname'.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element maxOccurs="1" minOccurs="0" name="Name" type="cns:ProperNameType">
        <xs:annotation>
          <xs:documentation>A proper name defined by the associated name type code and further clarified by the description text.
 Name - 'Smith'.
 Name Type Code - 'Father Surname'.
 Name - 'Park'.
 Name Type Code - 'Mother Surname'.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="NameTypeCode" type="cns:AddlNameTypeCodeType">
        <xs:annotation>
          <xs:documentation>The type of proper name
 Examples:
 'Father Surname'.
 'Mother Surname'.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="AddlNameTypeCodeContentType">
    <xs:annotation>
      <xs:documentation>This will include a codelist with defined types of additional names. {codeListAgencyName}IATA AIDM{/codeListAgencyName} </xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:token">
      <xs:enumeration value="Father Surname">
        <xs:annotation>
          <xs:documentation>This is the individuals fathers name surname which is part of the individuals full surname.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Mother Surname">
        <xs:annotation>
          <xs:documentation>This is the individuals mothers name surname which is part of the individuals full surname.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="AddlNameTypeCodeType">
    <xs:annotation>
      <xs:documentation>This will define allowable additional name types.
 'Father Surname'
 'Mother Surname'</xs:documentation>
    </xs:annotation>
    <xs:restriction base="cns:AddlNameTypeCodeContentType"/>
  </xs:simpleType>
  <xs:complexType name="AugmentationPointType">
    <xs:annotation>
      <xs:documentation>Implementer-Augmented Structure.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:any maxOccurs="unbounded" minOccurs="1" namespace="##other" processContents="lax"/>
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="CodeType">
    <xs:annotation>
      <xs:documentation>A code is a character string of letters, numbers, special characters (except escape sequences), and symbols.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:token"/>
  </xs:simpleType>
  <xs:complexType name="ContactInfoType">
    <xs:annotation>
      <xs:documentation>The electronic or geographic address which a party has provided as the contact channel. For example, contact email, contact postal address, contact phone number.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element maxOccurs="1" minOccurs="1" name="ContactInfoID" type="cns:ID_Type">
        <xs:annotation>
          <xs:documentation>Uniquely Identifies a set of Contact Information, within the context of one message.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="99" minOccurs="0" name="ContactPurposeText" type="cns:TextType">
        <xs:annotation>
          <xs:documentation>to identify the contact purpose (PADIS code list 3299)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="ContactRefusedInd" type="cns:IndType">
        <xs:annotation>
          <xs:documentation>When TRUE, Contact Information was refused to be provided.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="unbounded" minOccurs="0" name="EmailAddress" type="cns:EmailAddressType">
        <xs:annotation>
          <xs:documentation>The email address which should be used for contact purposes.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="Individual" type="cns:IndividualType">
        <xs:annotation>
          <xs:documentation>A single human being as distinct from a group, class, or family.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="IndividualRefID" type="cns:ID_Type">
        <xs:annotation>
          <xs:documentation>Reference to Individual instance(s)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="unbounded" minOccurs="0" name="OtherAddress" type="cns:OtherAddressType">
        <xs:annotation>
          <xs:documentation>Other Contact Method information. E.g. web site URL, social media handle.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="PaxSegmentRefID" type="cns:ID_Type">
        <xs:annotation>
          <xs:documentation>Uniquely identifies a Passenger Segment within the context of one message.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="unbounded" minOccurs="0" name="Phone" type="cns:PhoneType">
        <xs:annotation>
          <xs:documentation>A telephone number is a sequence of digits assigned to a fixed-line telephone subscriber station connected to a telephone line or to a wireless electronic telephony device, such as a radio telephone or a mobile telephone, or to other devices for data transmission via the public switched telephone network (PSTN) or other private networks.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="unbounded" minOccurs="0" name="PostalAddress" type="cns:PostalAddressType">
        <xs:annotation>
          <xs:documentation>Natural or physical address used for postal service. May be a building address, airport address, etc.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="RelationshipToPax" type="cns:TextType">
        <xs:annotation>
          <xs:documentation>Relationship to the passenger e.g. used for when this individual is an emergency contact</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="CountryCodeContentType">
    <xs:annotation>
      <xs:documentation>The code list of ISO 3166 two-alpha Country Codes </xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:token"/>
  </xs:simpleType>
  <xs:simpleType name="CountryCodeType">
    <xs:annotation>
      <xs:documentation>ISO Country Code.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="cns:CountryCodeContentType"/>
  </xs:simpleType>
  <xs:simpleType name="CountryDialingCodeContentType">
    <xs:annotation>
      <xs:documentation>Enumeration set for the Country Dialing Code BDT. </xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:token"/>
  </xs:simpleType>
  <xs:simpleType name="CountryDialingCodeType">
    <xs:annotation>
      <xs:documentation>Additional BDT to specify the numeric telephone dialing prefixes for the member countries of the International Telecommunication Union (ITU).</xs:documentation>
    </xs:annotation>
    <xs:restriction base="cns:CountryDialingCodeContentType"/>
  </xs:simpleType>
  <xs:simpleType name="DateTimeType">
    <xs:annotation>
      <xs:documentation>A date time identifies a date and time of day to various common resolutions: year, month, week, day, hour, minute, second, and fraction of second.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:dateTime"/>
  </xs:simpleType>
  <xs:simpleType name="DateType">
    <xs:annotation>
      <xs:documentation>A date is a Gregorian calendar representation in various common resolutions: year, month, week, day.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:date"/>
  </xs:simpleType>
  <xs:complexType name="DistributionChainLinkType">
    <xs:annotation>
      <xs:documentation>An organization playing a participating role in an instance of a distribution channel.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element maxOccurs="1" minOccurs="0" name="ContactInfo" type="cns:ContactInfoType">
        <xs:annotation>
          <xs:documentation>The electronic or geographic address which a party has provided as the contact channel. For example, contact email, contact postal address, contact phone number.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="1" name="Ordinal" type="cns:OrdinalType">
        <xs:annotation>
          <xs:documentation>The number defining the position of the distribution chain link in the distribution chain indicating the order in which the organization participated.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="1" name="OrgRole" type="cns:DistributionChainRoleCodeType">
        <xs:annotation>
          <xs:documentation>The distribution chain role performed by the participating organization. That is, the Seller (end buyer facing), the Distributor (an intermediary), or the Carrier (the Responsible Supplier).
 For clarity this is different to the business model used by the participating organization, and the Nature of Business typically registered during incorporation as one of the organization's business activities.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="1" name="ParticipatingOrg" type="cns:ParticipatingOrgType">
        <xs:annotation>
          <xs:documentation>An organized structure set up for a particular purpose, such as a business, government body, department, charity, or financial institution.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="SalesAgent" type="cns:SalesAgentType">
        <xs:annotation>
          <xs:documentation>An individual conducting sales activities on behalf of a sales branch or organization.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="SalesBranch" type="cns:SalesBranchType">
        <xs:annotation>
          <xs:documentation>An organizational unit with responsibility over sales in a market, for a product or service and under any other specified criteria.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="VerifiablePresentation" type="cns:TextType">
        <xs:annotation>
          <xs:documentation>The root mode of the IATA Verifiable Presentation schema structure based on w3c Verifiable Credential Schema</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="DistributionChainRoleCodeContentType">
    <xs:annotation>
      <xs:documentation>The list of allowable roles in a distribution chain. {codeListAgencyName}IATA{/codeListAgencyName} </xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:token">
      <xs:enumeration value="Carrier">
        <xs:annotation>
          <xs:documentation>An organization which carries the passenger, baggage, or goods, and/or commits to delivering the carriage.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Distributor">
        <xs:annotation>
          <xs:documentation>An organization that provides a distribution capability such as a certain type of Consolidator, an Aggregator, more generally an intermediary.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Seller">
        <xs:annotation>
          <xs:documentation>An organization that offers a shopping capability to a shopper.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="DistributionChainRoleCodeType">
    <xs:annotation>
      <xs:documentation>The list of allowable roles in a distribution chain.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="cns:DistributionChainRoleCodeContentType"/>
  </xs:simpleType>
  <xs:complexType name="DistributionChainType">
    <xs:annotation>
      <xs:documentation>An instance of a distribution channel, which is a chain of intermediaries through which a good or service passes until it reaches the final buyer or the end consumer.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element maxOccurs="unbounded" minOccurs="1" name="DistributionChainLink" type="cns:DistributionChainLinkType">
        <xs:annotation>
          <xs:documentation>An organization playing a participating role in an instance of a distribution channel.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="EmailAddressType">
    <xs:annotation>
      <xs:documentation>The email address which should be used for contact purposes.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element maxOccurs="1" minOccurs="0" name="ContactTypeText" type="cns:TextType">
        <xs:annotation>
          <xs:documentation>PADIS code list: Contact Type (to identify the technical contact type information)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="1" name="EmailAddressText" type="cns:TextType">
        <xs:annotation>
          <xs:documentation>The email address which should be used for contact purposes.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ErrorType">
    <xs:annotation>
      <xs:documentation>Contains information related to errors detected during processing of the preceding request.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element maxOccurs="1" minOccurs="0" name="Code" type="cns:CodeType">
        <xs:annotation>
          <xs:documentation>The code corresponding to the processing error as defined by PADIS 9321.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="DescText" type="cns:TextType">
        <xs:annotation>
          <xs:documentation>Free text description of the provided error.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="ErrorID" type="cns:ID_Type">
        <xs:annotation>
          <xs:documentation>Unique identifier for this error instance.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="1" name="LangCode" type="cns:CodeType">
        <xs:annotation>
          <xs:documentation>Language code associated with the error response.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="OwnerName" type="cns:ProperNameType">
        <xs:annotation>
          <xs:documentation>The name of the organization owning the error codelist.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="StatusText" type="cns:TextType">
        <xs:annotation>
          <xs:documentation>Document processing status. Recommended values are NotProcessed, Incomplete, Complete, Unknown.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="TagText" type="cns:TextType">
        <xs:annotation>
          <xs:documentation>Identifies the tag/XPath which relates to the provided Error.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="1" name="TypeCode" type="cns:CodeType">
        <xs:annotation>
          <xs:documentation>Uses a bilaterally agreed set of values to indicate the error type. The validating XSD can expect to accept values that it has not been explicitly coded for and process them by using Type = 'unknown'.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="URL" type="cns:URI_Type">
        <xs:annotation>
          <xs:documentation>Link to an online description of the provided Error.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="GenderCodeContentType">
    <xs:annotation>
      <xs:documentation>Enumeration set for Gender Code. {codeListAgencyName}ICAO{/codeListAgencyName} {codeListName}Document 9303 Sex of the holder{/codeListName} </xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:token">
      <xs:enumeration value="F">
        <xs:annotation>
          <xs:documentation>Female</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="M">
        <xs:annotation>
          <xs:documentation>Male</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="U">
        <xs:annotation>
          <xs:documentation>Unknown</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="X">
        <xs:annotation>
          <xs:documentation>Unspecified</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="GenderCodeType">
    <xs:annotation>
      <xs:documentation>Additional BDT to specify Gender code.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="cns:GenderCodeContentType"/>
  </xs:simpleType>
  <xs:complexType name="IATA_PayloadStandardAttributesType">
    <xs:annotation>
      <xs:documentation>The IATA_PayloadStdAttributes defines the standard attributes that appear on the root element for all IATA payloads.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element maxOccurs="1" minOccurs="0" name="AltLangID" type="cns:ID_Type">
        <xs:annotation>
          <xs:documentation>Identifies the alternate language for a customer or message. The human language is identified by ISO 639 codes.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="CorrelationID" type="cns:ID_Type">
        <xs:annotation>
          <xs:documentation>Allow end-to-end correlation of log messages with the corresponding Web service message throughout the processing of the Web service message.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="PrimaryLangID" type="cns:ID_Type">
        <xs:annotation>
          <xs:documentation>Identifes the primary language preference for the message. The human language is identified by ISO 639 codes.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="RetransmissionInd" type="cns:IndType">
        <xs:annotation>
          <xs:documentation>When true, indicates the message is being re-sent after a failure. It is recommended that this attribute is used (i.e., set to true) only when a message is retransmitted.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="SeqNumber" type="cns:NumberType">
        <xs:annotation>
          <xs:documentation>Used to identify the sequence number of the transaction as assigned by the sending system; allows for an application to process messages in a certain order or to request a resynchronization of messages in the event that a system has been off-line and needs to retrieve messages that were missed.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="Timestamp" type="cns:DateTimeType">
        <xs:annotation>
          <xs:documentation>Indicates the creation date and time of the message in UTC.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="TrxID" type="cns:ID_Type">
        <xs:annotation>
          <xs:documentation>A unique identifier to relate all messages within a transaction (e.g. this would be sent in all request and response messages that are part of an on-going transaction).</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="VersionNumber" type="cns:NumberType">
        <xs:annotation>
          <xs:documentation>For all IATA versioned messages, the version of the message is indicated by a decimal value.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="ID_Type">
    <xs:annotation>
      <xs:documentation>An identifier is a character string used to uniquely identify one instance of an object within an identification scheme that is managed by an agency.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:token"/>
  </xs:simpleType>
  <xs:simpleType name="IndType">
    <xs:annotation>
      <xs:documentation>An indicator is a list of two mutually exclusive Boolean values that express the only possible states of a property.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:boolean"/>
  </xs:simpleType>
  <xs:complexType name="IndividualType">
    <xs:annotation>
      <xs:documentation>A single human being as distinct from a group, class, or family.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element maxOccurs="unbounded" minOccurs="0" name="AddlName" type="cns:AddlNameType">
        <xs:annotation>
          <xs:documentation>An additional name type.
 The structure consists of a generic proper name with associated type.
 Examples:
 Name - 'Smith'.
 Name Type Code - 'Fathers Surname'.
 Name - 'Park'.
 Name Type Code - 'Mothers Surname'.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="Birthdate" type="cns:DateType">
        <xs:annotation>
          <xs:documentation>The date on which an individual was born.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="BirthplaceText" type="cns:TextType">
        <xs:annotation>
          <xs:documentation>Country Code where the Passenger was born (ISO 3166). For example: DE</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="GenderCode" type="cns:GenderCodeType">
        <xs:annotation>
          <xs:documentation>Gender of the individual. Refer to PADIS Codeset 6353.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="5" minOccurs="0" name="GivenName" type="cns:ProperNameType">
        <xs:annotation>
          <xs:documentation>A personal name given to the individual at birth and used before a family name. Also called first name. E.g. JOHN.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="IndividualID" type="cns:ID_Type">
        <xs:annotation>
          <xs:documentation>Uniquely Identifies an Individual within the context of one message.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="3" minOccurs="0" name="MiddleName" type="cns:ProperNameType">
        <xs:annotation>
          <xs:documentation>Individual's middle name or initial. E.g. G, GEORGE.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="SuffixName" type="cns:SupplementNameType">
        <xs:annotation>
          <xs:documentation> Individual's name suffixes and letters. Examples: Jr., Sr., III, Ret., Esq.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="1" name="Surname" type="cns:ProperNameType">
        <xs:annotation>
          <xs:documentation>Individual's hereditary name(s) common to all members of a family. Also known as family name or last name. E.g. SMITH. Excludes any potential suffix.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="TitleName" type="cns:SupplementNameType">
        <xs:annotation>
          <xs:documentation>A word such as Mr., Mrs., Miss or Dr that is used before an individual's name to indicate the gender, profession or marital status.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="NameType">
    <xs:annotation>
      <xs:documentation>A name is a word or phrase that constitutes the distinctive designation of a person, place, thing or concept</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:token"/>
  </xs:simpleType>
  <xs:simpleType name="NumberType">
    <xs:annotation>
      <xs:documentation>A mathematical number that is assigned or is determined by calculation.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:decimal"/>
  </xs:simpleType>
  <xs:simpleType name="OrderVersionNumberType">
    <xs:annotation>
      <xs:documentation>Order version number BDT.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:integer"/>
  </xs:simpleType>
  <xs:simpleType name="OrdinalType">
    <xs:annotation>
      <xs:documentation>An ordinal number is an assigned mathematical number that represents order or sequence.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:integer"/>
  </xs:simpleType>
  <xs:complexType name="OtherAddressType">
    <xs:annotation>
      <xs:documentation>Other Contact Method information. E.g. web site URL, social media handle.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element maxOccurs="1" minOccurs="0" name="ContactTypeText" type="cns:TextType">
        <xs:annotation>
          <xs:documentation>PADIS code list: Contact Type (to identify the technical contact type information)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="1" name="OtherAddressText" type="cns:TextType">
        <xs:annotation>
          <xs:documentation>Other Contact Method Value. Example: www.marketingsite.com</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ParticipatingOrgType">
    <xs:annotation>
      <xs:documentation>An organized structure set up for a particular purpose, such as a business, government body, department, charity, or financial institution.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element maxOccurs="1" minOccurs="0" name="Name" type="cns:NameType">
        <xs:annotation>
          <xs:documentation>Name of the organization</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="1" name="OrgID" type="cns:ID_Type">
        <xs:annotation>
          <xs:documentation>Organization code or identifier.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PhoneType">
    <xs:annotation>
      <xs:documentation>A telephone number is a sequence of digits assigned to a fixed-line telephone subscriber station connected to a telephone line or to a wireless electronic telephony device, such as a radio telephone or a mobile telephone, or to other devices for data transmission via the public switched telephone network (PSTN) or other private networks.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element maxOccurs="1" minOccurs="0" name="AreaCodeNumber" type="cns:TextType">
        <xs:annotation>
          <xs:documentation>Phone number area code. Example: 813
 Note: The phone number can be put unstructured into the phone element or can be put structured into country dialing code, area code, phone number and extension.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="ContactTypeText" type="cns:TextType">
        <xs:annotation>
          <xs:documentation>PADIS code list: Contact Type (to identify the technical contact type information)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="CountryDialingCode" type="cns:CountryDialingCodeType">
        <xs:annotation>
          <xs:documentation>Numeric telephone dialing prefixes for the member countries of the International Telecommunication Union (ITU). Note: The phone number can be put unstructured into the phone element or can be put structured into country dialing code, area code, phone number and extension.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="ExtensionNumber" type="cns:TextType">
        <xs:annotation>
          <xs:documentation>Phone extension number. Example: 1234
 Note: The phone number can be put unstructured into the phone element or can be put structured into country dialing code, area code, phone number and extension.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="PhoneNumber" type="cns:TextType">
        <xs:annotation>
          <xs:documentation>Phone number text.
 Examples:
 +1 999-999-9999 ext 1234, 
 617-9976
 Note: This may be a simple, un-structured phone number, such as +01 999-999-9999 ext 1234 or combined with additional attributes country dialing code, area code and extension to create a structured phone number.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PostalAddressType">
    <xs:annotation>
      <xs:documentation>Natural or physical address used for postal service. May be a building address, airport address, etc.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element maxOccurs="1" minOccurs="0" name="BuildingRoomText" type="cns:TextType">
        <xs:annotation>
          <xs:documentation>Additional address information including building name, room, apartment, or suite number.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="CityName" type="cns:NameType">
        <xs:annotation>
          <xs:documentation>The name, expressed as text, of the city, town or village.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="ContactTypeText" type="cns:TextType">
        <xs:annotation>
          <xs:documentation>PADIS code list: Contact Type (to identify the technical contact type information)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="CountryCode" type="cns:CountryCodeType">
        <xs:annotation>
          <xs:documentation>ISO Country Code (can be extended by bilateral agreement in case of exceptions, e.g. Kosovo). Examples: US, FR.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="CountryName" type="cns:ProperNameType">
        <xs:annotation>
          <xs:documentation>The name, expressed as text, of the country.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="CountrySubDivisionName" type="cns:ProperNameType">
        <xs:annotation>
          <xs:documentation>The name, expressed as text, of the sub-division of a country.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="PO_BoxCode" type="cns:CodeType">
        <xs:annotation>
          <xs:documentation>Post office box. Example: P.O. Box 21</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="1" minOccurs="0" name="PostalCode" type="cns:CodeType">
        <xs:annotation>
          <xs:documentation>Postal code. Examples: 11001, 11001-2345</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element maxOccurs="2" minOccurs="0" name="StreetText" type="cns:TextType">
        <xs:annotation>
          <xs:documentation>Street name and number. Examples: Main Street, 100 Main Street</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="ProperNameType">
    <xs:annotation>
      <xs:documentation>BDT with value constraints for proper, regular names (e.g. Individual Surname, Individual First Name, Company Name, etc.).</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:token">
      <xs:minLength value="1"/>
      <xs:maxLength value="64"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:complexType name="SalesAgentType">
    <xs:annotation>
      <xs:documentation>An individual conducting sales activities on behalf of a sales branch or organization.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element maxOccurs="1" minOccurs="1" name="SalesAgentID" type="cns:ID_Type">
        <xs:annotation>
          <xs:documentation>The unique identifier of the sales agent. This value must be accompanied by the appropriate Sales Branch Identifier or Organization Identifier to ensure uniqueness.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="SalesBranchType">
    <xs:annotation>
      <xs:documentation>An organizational unit with responsibility over sales in a market, for a product or service and under any other specified criteria.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element maxOccurs="1" minOccurs="1" name="SalesBranchID" type="cns:ID_Type">
        <xs:annotation>
          <xs:documentation>The industry wide unique identifier of the sales branch. Commonly, a value from the Pseudo City Code may be used, or a bi-latterly agreed code. When the latter it must only be used between parties that hold an appropriate translation.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="SupplementNameType">
    <xs:annotation>
      <xs:documentation>BDT with value constraints for short supplements to proper names, such as Title, Suffix, etc.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:token">
      <xs:minLength value="1"/>
      <xs:maxLength value="16"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="TextType">
    <xs:annotation>
      <xs:documentation>Text is a character string such as a finite set of characters generally in the form of words of a language.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:string"/>
  </xs:simpleType>
  <xs:simpleType name="URI_Type">
    <xs:annotation>
      <xs:documentation>A string of characters used to identify a resource. Such identification enables interaction with representations of the resource over a network, typically the World Wide Web, using specific protocols.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:anyURI"/>
  </xs:simpleType>
</xs:schema>