<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns="http://www.netex.org.uk/netex" xmlns:netex="http://www.netex.org.uk/netex" xmlns:siri="http://www.siri.org.uk/siri" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.netex.org.uk/netex" elementFormDefault="qualified" attributeFormDefault="unqualified" version="2.0" id="netex_serviceRestrictions_version">
	<xsd:include schemaLocation="../netex_responsibility/netex_typeOfValue_version.xsd"/>
	<xsd:include schemaLocation="../netex_genericFramework/netex_organisation_support.xsd"/>
	<xsd:include schemaLocation="netex_serviceRestrictions_support.xsd"/>
	<!-- ======================================================================= -->
	<xsd:annotation>
		<xsd:appinfo>
			<Metadata xmlns="http://www.govtalk.gov.uk/CM/gms-xs">
				<Aggregation>main schema</Aggregation>
				<Audience>e-service developers</Audience>
				<Contributor>V1.0 Christophe Duquesne</Contributor>
				<Contributor>Nicholas Knowles</Contributor>
				<Coverage>Europe</Coverage>
				<Creator>First drafted for NeTEx version 1.0 CEN TC278 WG3 SG9 Editor Nicholas Knowles.</Creator>
				<Date>
					<Created>2010-09-04</Created>
				</Date>
				<Date><Modified>2011-02-05</Modified> Name Space changes 
				</Date>
				<Date><Modified>2017-06-11</Modified> CR005  Add BookingContact to Booking Arrangements
				</Date>
				<Date>
					<Modified>2019-02-21 Make ValidityCondition etc visible on ClassOfUse</Modified>
				</Date>
				<Date><Modified>2019-03-02</Modified>UK-24 Add open PaymentMethod as first class object . Revise to be TypeOfPaymentMethod soas to avoid name class with enumerated value.
				</Date>
				<Date><Modified>2019-03-26</Modified>NL-27 CD #58 Add default  TypeOfProductCategory and TypeOfService to Line:
					Move TypeOfProductCategory amnd TypeOfService from netex_journey_version  to  Framework reusable components (netex_travelRights_version)  so they are visible from part 1	
					Rename netex_travel_rights to netext_serviceRestrictions so as to align with TM6		 
				</Date>
				<Date><Modified>2020-10-07</Modified>NewModes Booking arrangements add further attributes
 				         MaximumBookingPeriod, MinimBookingDuration, MaximumBookingDuration, DepositRequired,
 				         Add  ServiceBookingArrangement element and structure. 
 				         Delete gratuitous BookingArrangementRef_RelStructures.
				</Date>
				<Date><Modified>2020-11-06</Modified>NewModes Allow reusable contacts.
 				</Date>
				<Date><Modified>2023-10-17</Modified>Allow multiple Booking arrangements.
				</Date>
				<Date><Modified>2023-12-18</Modified>FIX: Correct the #525 implementation of BOOKING ARRANGEMENT and SERVICE BOOKING ARRANGEMENT,
					   SERVICE BOOKING ARRANGEMENT should inherit from BOOKING ARRANGEMENT and should have its own structure.
				</Date>
				<Description>
					<p>NeTEx is a European CEN standard for the exchange of Public Transport data including timetables.</p>
					<p>This sub-schema describes the Common  Service Restriction Types.</p>
				</Description>
				<Format>
					<MediaType>text/xml</MediaType>
					<Syntax>http://www.w3.org/2001/XMLSchema</Syntax>
					<Description>XML schema, W3C Recommendation 2001</Description>
				</Format>
				<Identifier>{http://www.netex.org.uk/schemas/1.0/xsd/netex_framework/netex_reusableComponents}netex_serviceRestrictions_version.xsd</Identifier>
				<Language>[ISO 639-2/B] ENG</Language>
				<Publisher>Kizoom Software Ltd, 16 High Holborn, London WC1V 6BX </Publisher>
				<Relation>
					<Requires>http://www.netex.org.uk/schemas/1.0/PATH/netex_prereqfile.xsd</Requires>
				</Relation>
				<Rights>Unclassified
				 <Copyright>CEN, Crown Copyright 2009-2023</Copyright>
				</Rights>
				<Source>
					<ul>
						<li>Derived from the Transmodel, VDV, TransXChange, NEPTUNE, BISON and Trident standards.</li>
					</ul>
				</Source>
				<Status>Version 1.0</Status>
				<Subject>
					<Category>Arts, recreation and travel, Tourism, Travel (tourism), Transport,
Air transport, Airports,
Ports and maritime transport, Ferries (marine),
Public transport, Bus services, Coach services, Bus stops and stations,
Rail transport, Railway stations and track, Train services, Underground trains,
Business and industry, Transport, Air transport , Ports and maritime transport, Public transport,
Rail transport, Roads and Road transport
</Category>
					<Project>CEN TC278 WG3 SG9.</Project>
				</Subject>
				<Title>NeTEx Travel Right Value Types.</Title>
				<Type>Standard</Type>
			</Metadata>
		</xsd:appinfo>
		<xsd:documentation>NeTEx Service Restrictions.</xsd:documentation>
	</xsd:annotation>
	<!-- ======================================================================= -->
	<xsd:element name="ClassOfUse" substitutionGroup="TypeOfValue">
		<xsd:annotation>
			<xsd:documentation>Defines an Classification of users who may make use of a component or amenity.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="ClassOfUse_ValueStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="EntityInVersionGroup" minOccurs="0"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="TypeOfValueGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="ClassOfUseGroup"/>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="ClassOfUseIdType" use="required">
						<xsd:annotation>
							<xsd:documentation>Identifier of CLASS OF USE.</xsd:documentation>
						</xsd:annotation>
					</xsd:attribute>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="ClassOfUse_ValueStructure">
		<xsd:annotation>
			<xsd:documentation>Type for a TYPE OF CLASS OF USE.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="TypeOfValue_VersionStructure">
				<xsd:sequence>
					<xsd:group ref="ClassOfUseGroup"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="ClassOfUseGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for CLASS OF USE.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="FareClass" type="FareClassEnumeration" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Fixed class associated with this CLASS OF USE.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<!-- ===== BOOKING ARRANGEMENT ===================================== -->
	<xsd:group name="BookingArrangementInFrameGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for BOOKING ARRANGEMENTs frame.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="bookingArrangements" type="bookingArrangementsInFrame_RelStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation> BOOKING ARRANGEMENTs in frame +v2.0.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="serviceBookingArrangements" type="serviceBookingArrangementsInFrame_RelStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>SERVICE BOOKING ARRANGEMENT in frame. v2.0</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<!-- ===== BOOKING ARRANGEMENT ===================================== -->
	<xsd:complexType name="bookingArrangementsInFrame_RelStructure">
		<xsd:annotation>
			<xsd:documentation>Type for containment in frame of BOOKING ARRANGEMENTs</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="containmentAggregationStructure">
				<xsd:sequence>
					<xsd:element ref="BookingArrangement" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="bookingArrangements_RelStructure">
		<xsd:annotation>
			<xsd:documentation>Type for a list of BookingArrangements.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="containmentAggregationStructure">
				<xsd:choice maxOccurs="unbounded">
					<xsd:element ref="BookingArrangementRef"/>
					<xsd:element ref="BookingArrangement"/>
				</xsd:choice>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:element name="BookingArrangement" substitutionGroup="DataManagedObject">
		<xsd:annotation>
			<xsd:documentation>Details of the booking arrangements for a given LINE, STOP, SERVICE etc.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="BookingArrangement_VersionStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="EntityInVersionGroup" minOccurs="0"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="BookingArrangementGroup">
								<xsd:annotation>
									<xsd:documentation>Details for a BookingArrangement</xsd:documentation>
								</xsd:annotation>
							</xsd:group>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="BookingArrangementIdType" use="required"/>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="BookingArrangement_VersionStructure">
		<xsd:annotation>
			<xsd:documentation>Type for a BOOKING ARRANGEMENT</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="DataManagedObjectStructure">
				<xsd:sequence>
					<xsd:group ref="BookingArrangementGroup">
						<xsd:annotation>
							<xsd:documentation>Details for BookingArrangement</xsd:documentation>
						</xsd:annotation>
					</xsd:group>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="BookingArrangementGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for a BOOKING ARRANGEMENT</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="BookingContact" type="ContactStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Contact for Booking. +v1.1</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="BookingMethods" type="BookingMethodListOfEnumerations" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Allowed Ways of Making a BOOKING.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="BookingAccess" type="BookingAccessEnumeration" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Who can make a booking. Default is public.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="BookWhen" type="PurchaseWhenEnumeration" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>When Booking can be made. +V1.1</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="BuyWhen" type="PurchaseMomentListOfEnumerations" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>When purchase can be made. +V1.1</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="LatestBookingTime" type="xsd:time" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Latest time in day that booking can be made.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="MinimumBookingPeriod" type="xsd:duration" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Minimum interval in advance of departure day or time that Service may be ordered.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="MaximumBookingPeriod" type="xsd:duration" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Maximum interval in advance of departure day or time that Service may be ordered. +V1.2.2</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="BookingUrl" type="InfoLinkStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>URL for booking. +V1.1</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="BookingNote" type="MultilingualString" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Note about booking the FLEXIBLE LINE.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<!-- =Deprecated structures for BookingArrangements (for backward compatibility only)========== -->
	<xsd:complexType name="BookingArrangementsStructure">
		<xsd:annotation>
			<xsd:documentation>Type for BOOKING ARRANGEMENTs.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:group ref="DeprecatedBookingArrangementGroup"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:group name="DeprecatedBookingArrangementGroup">
		<xsd:annotation>
			<xsd:documentation>Deprecated group for a BOOKING ARRANGEMENT</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="BookingContact" type="ContactStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Contact for Booking. +v1.1</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="BookingMethods" type="BookingMethodListOfEnumerations" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Allowed ways of making a BOOKING.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="BookingAccess" type="BookingAccessEnumeration" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Who can make a booking. Default is public.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="BookWhen" type="PurchaseWhenEnumeration" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>When a booking can be made. +V1.1</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="BuyWhen" type="PurchaseMomentListOfEnumerations" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>When purchase can be made. +V1.1</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="LatestBookingTime" type="xsd:time" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Latest time in day that booking can be made.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="MinimumBookingPeriod" type="xsd:duration" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Minimum interval in advance of departure day or time that Service may be ordered.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="MaximumBookingPeriod" type="xsd:duration" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Maximum interval in advance of departure day or time that a service may be ordered. +V1.2.2</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="BookingUrl" type="InfoLinkStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>URL for booking. +V1.1</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="BookingNote" type="MultilingualString" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Note about booking the FLEXIBLE LINE.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<!-- ===== BOOKING ARRANGEMENT ===================================== -->
	<xsd:complexType name="serviceBookingArrangementsInFrame_RelStructure">
		<xsd:annotation>
			<xsd:documentation>Type for containment in frame of SERVICE BOOKING ARRANGEMENTs</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="containmentAggregationStructure">
				<xsd:sequence>
					<xsd:element ref="ServiceBookingArrangement" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation>Information on booking rules and additional data allowing the user to take the decision to book a service and to undertake the booking of a LOCAL SERVICE.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="serviceBookingArrangements_RelStructure">
		<xsd:annotation>
			<xsd:documentation>Type for a list of BookingArrangements.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="containmentAggregationStructure">
				<xsd:choice maxOccurs="unbounded">
					<xsd:element ref="ServiceBookingArrangementRef"/>
					<xsd:element ref="ServiceBookingArrangement"/>
				</xsd:choice>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:element name="ServiceBookingArrangement" substitutionGroup="DataManagedObject">
		<xsd:annotation>
			<xsd:documentation>Type for a SERVICE BOOKING ARRANGEMENT.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="ServiceBookingArrangement_VersionStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="EntityInVersionGroup" minOccurs="0"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="BookingArrangementGroup">
								<xsd:annotation>
									<xsd:documentation>Details for a BookingArrangement</xsd:documentation>
								</xsd:annotation>
							</xsd:group>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="ServiceBookingArrangementGroup">
								<xsd:annotation>
									<xsd:documentation>Details for BookingArrangement</xsd:documentation>
								</xsd:annotation>
							</xsd:group>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="BookingArrangementIdType" use="required"/>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="ServiceBookingArrangement_VersionStructure">
		<xsd:annotation>
			<xsd:documentation>Version of a SERVICE BOOKING ARRANGEMENT.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="BookingArrangement_VersionStructure">
				<xsd:sequence>
					<xsd:group ref="ServiceBookingArrangementGroup">
						<xsd:annotation>
							<xsd:documentation>Details for BookingArrangement</xsd:documentation>
						</xsd:annotation>
					</xsd:group>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="ServiceBookingArrangementGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for a SERVICE BOOKING ARRANGEMENT.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="MinimumBookingDuration" type="xsd:duration" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Minimum period for which a booking can be made. +v.1.2.2</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="MaximumBookingDuration" type="xsd:duration" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Maximum period for which a booking can be made. +v.1.2.2</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="DepositRequired" type="xsd:boolean" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Whether a deposit is required. +v1.2.2</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="BookingChargeType" type="BookingChargeTypeEnumeration" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Nature of booking fee. v1.2.2</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<!-- ======================================================================= -->
	<xsd:element name="TypeOfPaymentMethod" substitutionGroup="TypeOfValue">
		<xsd:annotation>
			<xsd:documentation>Defines an open classification payment methods. + v1.1</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="TypeOfPaymentMethod_ValueStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="EntityInVersionGroup" minOccurs="0"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="TypeOfValueGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="TypeOfPaymentMethodGroup"/>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="TypeOfPaymentMethodIdType" use="required">
						<xsd:annotation>
							<xsd:documentation>Identifier of TYPE OF PAYMENT METHOD.</xsd:documentation>
						</xsd:annotation>
					</xsd:attribute>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="TypeOfPaymentMethod_ValueStructure">
		<xsd:annotation>
			<xsd:documentation>Type for a TYPE OF TYPE OF PAYMENT METHOD.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="TypeOfValue_VersionStructure">
				<xsd:sequence>
					<xsd:group ref="TypeOfPaymentMethodGroup"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="TypeOfPaymentMethodGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for TYPE OF PAYMENT METHOD.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="PaymentMethod" type="PaymentMethodEnumeration" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Payment method value.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="AutomatedUse" type="xsd:boolean" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Whether PAYMENT METHOD can be used for automated payments.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<!-- ===ENTIITY IN VERSION IN FRAME====Used in SERVICE FRAME)=================================================== -->
	<xsd:complexType name="typesOfServiceInFrame_RelStructure">
		<xsd:annotation>
			<xsd:documentation>Type for containment in frame of TYPE OF SERVICE.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="containmentAggregationStructure">
				<xsd:sequence>
					<xsd:element ref="TypeOfService" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<!-- ======================================================================= -->
	<xsd:element name="TypeOfService" substitutionGroup="TypeOfEntity">
		<xsd:annotation>
			<xsd:documentation>Classification of a Service.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="TypeOfServiceStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="EntityInVersionGroup" minOccurs="0"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="TypeOfValueGroup"/>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="TypeOfServiceIdType" use="required">
						<xsd:annotation>
							<xsd:documentation>Reference to a TYPE OF SERVICE.</xsd:documentation>
						</xsd:annotation>
					</xsd:attribute>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="TypeOfServiceStructure">
		<xsd:annotation>
			<xsd:documentation>Type for a TYPE OF SERVICE.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="TypeOfEntity_VersionStructure"/>
		</xsd:complexContent>
	</xsd:complexType>
	<!-- ======================================================================= -->
	<xsd:element name="TypeOfProductCategory" substitutionGroup="TypeOfValue">
		<xsd:annotation>
			<xsd:documentation>Classification of a PRODUCT CATEGORY.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="TypeOfProductCategoryStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="EntityInVersionGroup" minOccurs="0"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="TypeOfValueGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="TypeOfProductCategoryGroup"/>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="TypeOfProductCategoryIdType" use="required">
						<xsd:annotation>
							<xsd:documentation>Reference to a TYPE OF PRODUCT CATEGORY.</xsd:documentation>
						</xsd:annotation>
					</xsd:attribute>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="TypeOfProductCategoryStructure">
		<xsd:annotation>
			<xsd:documentation>Type for a TYPE OF PRODUCT CATEGORY.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="TypeOfEntity_VersionStructure">
				<xsd:sequence>
					<xsd:group ref="TypeOfProductCategoryGroup"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="TypeOfProductCategoryGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for a TYPE OF PRODUCT CATEGORY.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="ExternalProductCategoryRef" type="ExternalObjectRefStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>An alternative code that uniquely identifies the PRODUCT CATEGORY. Specifically for use in AVMS systems that require an alias, if code is different from main identifier. For VDV compatibility. DEPRECATED - use privateCodes -v2.0</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Presentation" type="PresentationStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>The presentation colours to use for this TYPE OF PRODUCT CATEGORY. +v2.1</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<!-- ======================================================================= -->
</xsd:schema>
