<?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:xsd="http://www.w3.org/2001/XMLSchema" xmlns:siri="http://www.siri.org.uk/siri" targetNamespace="http://www.netex.org.uk/netex" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0" id="netex_validityCondition_version">
	<xsd:include schemaLocation="netex_validityCondition_support.xsd"/>
	<xsd:include schemaLocation="netex_responsibility_version.xsd"/>
	<xsd:annotation>
		<xsd:appinfo>
			<Metadata xmlns="http://www.govtalk.gov.uk/CM/gms-xs">
				<Aggregation>main schema</Aggregation>
				<Audience>e-service developers</Audience>
				<Coverage>Europe</Coverage>
				<Creator>First drafted for version 1.0 CEN TC278 WG3 SG6 Editor Nicholas Knowles.</Creator>
				<Date>
					<Created>2010-09-04</Created>
				</Date>
				<Date>
					<Modified>2011-02-05</Modified>
				</Date>
				<Date>
					<Modified>217-03-27   Change to use responsibility  1.1 with AlternativeText</Modified>
				</Date>
				<Date><Modified>2023-11-07</Modified>CR0544 Deprecate PrivateCode.
				</Date>
				<Description>
					<p>NeTEx - Network Exchange. This subschema defines Time base 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_responsibility}netex_validityCondition_version.xsd</Identifier>
				<Language>[ISO 639-2/B] ENG</Language>
				<Publisher>Kizoom Software Ltd, 16 High Holborn, London WC1V 6BX</Publisher>
				<Rights>Unclassified
 <Copyright>CEN, Crown Copyright 2009-2014</Copyright>
				</Rights>
				<Source>
					<ul>
						<li>Derived from the Transmodel standard.</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 Network Exchange - VALIDITY CONDITION types.</Title>
				<Type>Standard</Type>
			</Metadata>
		</xsd:appinfo>
		<xsd:documentation>NeTEx VALIDITY CONDITION types.</xsd:documentation>
	</xsd:annotation>
	<!--CLOSE COUPLED with netex_responsibility_version-->
	<!-- ======================================================================= -->
	<xsd:complexType name="validityConditions_RelStructure">
		<xsd:annotation>
			<xsd:documentation>A collection of one or more VALIDITY CONDITIONs.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="containmentAggregationStructure">
				<xsd:choice maxOccurs="unbounded">
					<xsd:element ref="ValidityConditionRef"/>
					<xsd:element ref="ValidBetween"/>
					<xsd:element ref="ValidityCondition_Dummy"/>
				</xsd:choice>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<!-- ======================================================================= -->
	<xsd:element name="ValidityCondition_Dummy" type="DataManagedObjectStructure" abstract="true" substitutionGroup="DataManagedObject">
		<xsd:annotation>
			<xsd:documentation>Condition used in order to characterise a given VERSION of a VERSION FRAME. A VALIDITY CONDITION consists of a parameter (e.g. date, triggering event, etc) and its type of application (e.g. for, from, until, etc.).</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<!-- ======================================================================= -->
	<xsd:element name="ValidityCondition" substitutionGroup="ValidityCondition_Dummy">
		<xsd:annotation>
			<xsd:documentation>Condition used in order to characterise a given VERSION of a VERSION FRAME. A VALIDITY CONDITION consists of a parameter (e.g. date, triggering event, etc) and its type of application (e.g. for, from, until, etc.).</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="ValidityCondition_VersionStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:element name="Name" type="MultilingualString" minOccurs="0">
								<xsd:annotation>
									<xsd:documentation>Name of VALIDITY CONDITION.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
							<xsd:element name="Description" type="MultilingualString" minOccurs="0">
								<xsd:annotation>
									<xsd:documentation>Description of VALIDITY CONDITION.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
							<xsd:element name="ConditionedObjectRef" type="VersionOfObjectRefStructure" minOccurs="0">
								<xsd:annotation>
									<xsd:documentation>Entity to which condition specifically attaches.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
							<xsd:element name="WithConditionRef" type="ValidityConditionRefStructure" minOccurs="0">
								<xsd:annotation>
									<xsd:documentation>CONDITION with which this rule is logically ANDed.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="ValidityConditionIdType" use="required"/>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="ValidityCondition_VersionStructure">
		<xsd:annotation>
			<xsd:documentation>Types for a VALIDITY CONDITION.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="DataManagedObjectStructure">
				<xsd:group ref="ValidityConditionGroup"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="ValidityConditionGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for a VALIDITY CONDITION.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Name" type="MultilingualString" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Name of VALIDITY CONDITION.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Description" type="MultilingualString" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Description of VALIDITY CONDITION.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="ConditionedObjectRef" type="VersionOfObjectRefStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Entity to which condition specifically attaches.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="WithConditionRef" type="ValidityConditionRefStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>CONDITION with which this rule is logically ANDed.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<!-- ====Time zone======================================================= -->
	<xsd:complexType name="validityTriggers_RelStructure">
		<xsd:annotation>
			<xsd:documentation>A collection of one or more VALIDITY TRIGGERs.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="containmentAggregationStructure">
				<xsd:sequence>
					<xsd:element name="ValidityTrigger" type="ValidityTrigger_VersionStructure" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation>External event defining a VALIDITY CONDITION. E.g. exceptional flow of a river, bad weather, Road closure for works.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:element name="ValidityTrigger" substitutionGroup="ValidityCondition_Dummy">
		<xsd:annotation>
			<xsd:documentation>External event defining a VALIDITY CONDITION. E.g. exceptional flow of a river, bad weather, Road closure for works.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="ValidityTrigger_VersionStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:element name="Name" type="MultilingualString" minOccurs="0">
								<xsd:annotation>
									<xsd:documentation>Name of VALIDITY CONDITION.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
							<xsd:element name="Description" type="MultilingualString" minOccurs="0">
								<xsd:annotation>
									<xsd:documentation>Description of VALIDITY CONDITION.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
							<xsd:element name="ConditionedObjectRef" type="VersionOfObjectRefStructure" minOccurs="0">
								<xsd:annotation>
									<xsd:documentation>Entity to which condition specifically attaches.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
							<xsd:element name="WithConditionRef" type="ValidityConditionRefStructure" minOccurs="0">
								<xsd:annotation>
									<xsd:documentation>CONDITION with which this rule is logically ANDed.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="ValidityTriggerGroup"/>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="ValidityTriggerIdType" use="required"/>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="ValidityTrigger_VersionStructure">
		<xsd:annotation>
			<xsd:documentation>Type for a VALIDITY TRIGGER.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="ValidityCondition_VersionStructure">
				<xsd:sequence>
					<xsd:group ref="ValidityTriggerGroup"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="ValidityTriggerGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for a VALIDITY CONDITION TRIGGER.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="TriggerObjectRef" type="VersionOfObjectRefStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Entity on which Trigger is based - Trigger value is taken from it.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element ref="PrivateCode" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>DEPRECATED - use privateCodes. -v2.0</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<!-- ======================================================================= -->
	<xsd:complexType name="validityRuleParameters_RelStructure">
		<xsd:annotation>
			<xsd:documentation>A collection of one or more VALIDITY PARAMETERs.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="containmentAggregationStructure">
				<xsd:sequence>
					<xsd:element name="ValidityRuleParameter" type="ValidityRuleParameter_VersionStructure" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation>Parameter for a rule of a user defined VALIDITY CONDITION used by a rule for selecting versions. E.g. river level &gt; 1,5 m and bad weather.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:element name="ValidityRuleParameter" substitutionGroup="ValidityCondition_Dummy">
		<xsd:annotation>
			<xsd:documentation>A user defined VALIDITY CONDITION used by a rule for selecting versions. E.g. river level &gt; 1,5 m and bad weather.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="ValidityRuleParameter_VersionStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:element name="Name" type="MultilingualString" minOccurs="0">
								<xsd:annotation>
									<xsd:documentation>Name of VALIDITY CONDITION.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
							<xsd:element name="Description" type="MultilingualString" minOccurs="0">
								<xsd:annotation>
									<xsd:documentation>Description of VALIDITY CONDITION.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
							<xsd:element name="ConditionedObjectRef" type="VersionOfObjectRefStructure" minOccurs="0">
								<xsd:annotation>
									<xsd:documentation>Entity to which condition specifically attaches.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
							<xsd:element name="WithConditionRef" type="ValidityConditionRefStructure" minOccurs="0">
								<xsd:annotation>
									<xsd:documentation>CONDITION with which this rule is logically ANDed.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="ValidityRuleParameterGroup"/>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="ValidityRuleParameterIdType" use="required"/>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="ValidityRuleParameter_VersionStructure">
		<xsd:annotation>
			<xsd:documentation>Type for a VALIDITY PARAMETER.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="ValidityCondition_VersionStructure">
				<xsd:sequence>
					<xsd:group ref="ValidityRuleParameterGroup"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="ValidityRuleParameterGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for a VALIDITY RULE PARAMETER.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="RuleObjectRef" type="VersionOfObjectRefStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Entity on which Rules based - Trigger value is taken from it.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:choice>
				<xsd:sequence>
					<xsd:element name="AttributeName" type="xsd:NMTOKEN">
						<xsd:annotation>
							<xsd:documentation>Name of an Attribute of the referenced ENTITY which provides Trigger value.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="ComparisonOperator" type="RelativeOperatorEnumeration">
						<xsd:annotation>
							<xsd:documentation>Comparison operator to be used when comparing the referenced attribute of to the Attribute Value : EQ, NE,GE, GT, LE,LT (equal, not equal, greater equal, greater than, lower equal, lower than).</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:choice>
						<xsd:element name="AttributeValue" type="xsd:anyType">
							<xsd:annotation>
								<xsd:documentation>Value of attribute of ENTITY.</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
						<xsd:element name="Method" type="xsd:anyType">
							<xsd:annotation>
								<xsd:documentation>Method for computing an attribute. By default this will be as simple operator. Some systems may support additional means of comparison.</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:choice>
				</xsd:sequence>
				<xsd:element name="isValid" type="xsd:boolean">
					<xsd:annotation>
						<xsd:documentation>If the referenced element is currently valid.</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
			</xsd:choice>
		</xsd:sequence>
	</xsd:group>
	<!-- ======================================================================= -->
	<xsd:element name="SimpleValidityCondition">
		<xsd:annotation>
			<xsd:documentation>OPTIMISATION Simple version of a VALIDITY CONDITION used in order to characterise a given VERSION of a VERSION FRAME. Comprises a simple period.Deprecated.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="ValidBetween_VersionStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:element name="FromDate" type="xsd:dateTime" minOccurs="0">
								<xsd:annotation>
									<xsd:documentation>Start date of AVAILABILITY CONDITION.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
							<xsd:element name="ToDate" type="xsd:dateTime" minOccurs="0">
								<xsd:annotation>
									<xsd:documentation>End of AVAILABILITY CONDITION. Date is INCLUSIVE.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="ValidityConditionIdType" use="required">
						<xsd:annotation>
							<xsd:documentation>Identifier of ENTITY.</xsd:documentation>
						</xsd:annotation>
					</xsd:attribute>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="ValidBetween">
		<xsd:annotation>
			<xsd:documentation>OPTIMISATION. Simple version of a VALIDITY CONDITION. Comprises a simple period. NO UNIQUENESS CONSTRAINT.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="ValidBetween_VersionStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:element name="FromDate" type="xsd:dateTime" minOccurs="0">
								<xsd:annotation>
									<xsd:documentation>Start date of AVAILABILITY CONDITION.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
							<xsd:element name="ToDate" type="xsd:dateTime" minOccurs="0">
								<xsd:annotation>
									<xsd:documentation>End of AVAILABILITY CONDITION. Date is INCLUSIVE.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="ValidityConditionIdType" use="optional">
						<xsd:annotation>
							<xsd:documentation>Identifier of ENTITY.</xsd:documentation>
						</xsd:annotation>
					</xsd:attribute>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="ValidBetween_VersionStructure">
		<xsd:annotation>
			<xsd:documentation>Type for a Simple VALIDITY CONDITION.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="ValidityCondition_VersionStructure">
				<xsd:sequence>
					<xsd:element name="FromDate" type="xsd:dateTime" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>Start date of AVAILABILITY CONDITION.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="ToDate" type="xsd:dateTime" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>End of AVAILABILITY CONDITION. Date is INCLUSIVE.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<!-- ======================================================================= -->
</xsd:schema>
