<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:core="http://www.govtalk.gov.uk/core" xmlns="http://www.netex.org.uk/netex" targetNamespace="http://www.netex.org.uk/netex" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0" id="netex_generalFrame_version">
	<xsd:include schemaLocation="netex_commonFrame_version.xsd"/>
	<xsd:include schemaLocation="../netex_responsibility/netex_entity_entity.xsd"/>
	<xsd:include schemaLocation="../netex_reusableComponents/netex_linkByValue_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>
				<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>2010-11-05</Modified>
				</Date>
				<Description>
					<p>NeTEx - Network Exchange. This subschema defines COMMON FRAME 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_frames}netex_generalFrame_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, VDV, TransXChange, NaPTAN, NOPTIS, 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 Network Exchange - COMMON FRAME types.</Title>
				<Type>Standard</Type>
			</Metadata>
		</xsd:appinfo>
		<xsd:documentation>COMMON FRAME types for NeTEx.</xsd:documentation>
	</xsd:annotation>
	<!-- ======================================================================= -->
	<!-- ======================================================================= -->
	<!-- ======================================================================= -->
	<xsd:complexType name="entityInVersionInFrame_RelStructure">
		<xsd:annotation>
			<xsd:documentation>Type for an ENTITIY IN VERSION IN FRAME member.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="containmentAggregationStructure">
				<xsd:sequence>
					<xsd:choice minOccurs="0" maxOccurs="unbounded">
						<xsd:element ref="VersionOfObjectRef"/>
						<xsd:element ref="LinkRefByValue"/>
					</xsd:choice>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<!-- ======================================================================= -->
	<xsd:complexType name="versionFrameMembers_RelStructure">
		<xsd:annotation>
			<xsd:documentation>A collection of one or more VERSION FRAME MEMBERS.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="containmentAggregationStructure">
				<xsd:choice maxOccurs="unbounded">
					<xsd:element name="EntityInVersionInFrameRef" type="EntityInVersionInFrameRefStructure">
						<xsd:annotation>
							<xsd:documentation>Member of a VERSION FRAME.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element ref="DataManagedObject"/>
				</xsd:choice>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="VersionFrameMembersGroup">
		<xsd:annotation>
			<xsd:documentation>Elements of a VERSION FRAME MEMBER.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="members" type="versionFrameMembers_RelStructure" minOccurs="0"/>
		</xsd:sequence>
	</xsd:group>
	<!-- ======================================================================= -->
	<xsd:simpleType name="GeneralFrameIdType">
		<xsd:annotation>
			<xsd:documentation>Type for identifier of a GENERAL FRAME.</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="VersionFrameIdType"/>
	</xsd:simpleType>
	<xsd:element name="GeneralFrameRef" type="GeneralFrameRefStructure" substitutionGroup="VersionFrameRef">
		<xsd:annotation>
			<xsd:documentation>Reference to a GENERAL FRAME.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:complexType name="GeneralFrameRefStructure">
		<xsd:annotation>
			<xsd:documentation>Type for a reference to a GENERAL FRAME.</xsd:documentation>
		</xsd:annotation>
		<xsd:simpleContent>
			<xsd:restriction base="VersionFrameRefStructure">
				<xsd:attribute name="ref" type="GeneralFrameIdType" use="required">
					<xsd:annotation>
						<xsd:documentation>Identifier of a GENERAL FRAME.</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="nameOfRefClass" type="NameOfClassGeneralFrameRefStructureType" default="GeneralFrame">
					<xsd:annotation>
						<xsd:documentation>Automatic reference class for GeneralFrameRefStructure</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="modification" type="ModificationEnumeration" use="optional">
					<xsd:annotation>
						<xsd:documentation>Nature of last modification: new, revise, delete, unchanged.</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="versionRef" type="VersionIdType" use="optional">
					<xsd:annotation>
						<xsd:documentation>Identifier of version of referenced entity. For use when reference is External and a specific version is required. Mutually exclusive with version</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="uri" type="xsd:anyURI" use="optional">
					<xsd:annotation>
						<xsd:documentation>Location of the external entity. +v2.0</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attributeGroup ref="ReferenceModificationDetailsGroup"/>
			</xsd:restriction>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:element name="GeneralFrame" substitutionGroup="CommonFrame">
		<xsd:annotation>
			<xsd:documentation>A General purpose frame that can be used to exchange any NeTEx element. Does not impose any structure.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="General_VersionFrameStructure">
					<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="VersionFrameGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="GeneralFrameGroup"/>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="GeneralFrameIdType" use="required"/>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="General_VersionFrameStructure">
		<xsd:annotation>
			<xsd:documentation>Type for a GENERAL FRAME.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="Common_VersionFrameStructure">
				<xsd:sequence>
					<xsd:group ref="GeneralFrameGroup"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="GeneralFrameGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for a GENERAL FRAME.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="members" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Entities in GENERAL FRAME.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="generalFrameMembers_RelStructure"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<!-- ======================================================================= -->
	<xsd:complexType name="generalFrameMembers_RelStructure">
		<xsd:annotation>
			<xsd:documentation>A collection of one or more VERSION FRAME MEMBERS.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="containmentAggregationStructure">
				<xsd:choice maxOccurs="unbounded">
					<xsd:element ref="GeneralFrameMember"/>
					<xsd:element ref="DataManagedObject"/>
					<xsd:element ref="Entity_Entity"/>
				</xsd:choice>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:simpleType name="GeneralFrameMemberIdType">
		<xsd:annotation>
			<xsd:documentation>Type for identifier of a GENERAL FRAME MEMBER.</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="FrameMemberIdType"/>
	</xsd:simpleType>
	<xsd:element name="GeneralFrameMemberRef" type="GeneralFrameMemberRefStructure">
		<xsd:annotation>
			<xsd:documentation>Reference to a GENERAL FRAME MEMBER.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:complexType name="GeneralFrameMemberRefStructure">
		<xsd:annotation>
			<xsd:documentation>Type for a reference to a GENERAL FRAME MEMBER.</xsd:documentation>
		</xsd:annotation>
		<xsd:simpleContent>
			<xsd:restriction base="VersionOfObjectRefStructure">
				<xsd:attribute name="nameOfRefClass" type="NameOfClassGeneralFrameMemberRefStructureType" default="GeneralFrameMember">
					<xsd:annotation>
						<xsd:documentation>Automatic reference class for GeneralFrameMemberRefStructure</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="modification" type="ModificationEnumeration" use="optional">
					<xsd:annotation>
						<xsd:documentation>Nature of last modification: new, revise, delete, unchanged.</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="ref" type="ObjectIdType" use="required">
					<xsd:annotation>
						<xsd:documentation>Identifier of referenced entity.</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="versionRef" type="VersionIdType" use="optional">
					<xsd:annotation>
						<xsd:documentation>Identifier of version of referenced entity. For use when reference is External and a specific version is required. Mutually exclusive with version</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="uri" type="xsd:anyURI" use="optional">
					<xsd:annotation>
						<xsd:documentation>Location of the external entity. +v2.0</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attributeGroup ref="ReferenceModificationDetailsGroup"/>
			</xsd:restriction>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:element name="GeneralFrameMember" type="GeneralFrameMemberStructure">
		<xsd:annotation>
			<xsd:documentation>An association of an ENTITY in a GENERAL FRAME.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:complexType name="GeneralFrameMemberStructure">
		<xsd:annotation>
			<xsd:documentation>Type for a GENERAL FRAME MEMBER.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="VersionedChildStructure">
				<xsd:group ref="GeneralFrameMemberGroup">
					<xsd:annotation>
						<xsd:documentation>Elements of a GENERAL FRAME MEMBER. Note that VersionOfObjectRef is used too implement ENTITY IN VERSION IN FRAME.</xsd:documentation>
					</xsd:annotation>
				</xsd:group>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="GeneralFrameMemberGroup">
		<xsd:annotation>
			<xsd:documentation>Elements of a GENERAL FRAME MEMBER.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Name" type="MultilingualString" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Name of Network Version.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element ref="VersionOfObjectRef"/>
		</xsd:sequence>
	</xsd:group>
</xsd:schema>
