<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2005 sp2 U (http://www.altova.com) by Nick js knowles (Kizoom Ltd.) -->
<!-- edited with XMLSPY v2004 rel. 3 U (http://www.xmlspy.com) by Nick js Knowles (Kizoom Ltd.) -->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:core="http://www.govtalk.gov.uk/core" elementFormDefault="qualified" attributeFormDefault="unqualified" version="2.0" id="NaPT_common">
    <xsd:annotation>
        <xsd:appinfo xmlns:gms="http://www.govtalk.gov.uk/CM/gms">
            <Metadata xmlns="http://www.govtalk.gov.uk/CM/gms-xs">
                <Aggregation>main schema</Aggregation>
                <Audience>e-service developers</Audience>
                <Contributor>Revised for version 2.0 Kizoom Limited, by Tom White, Nicholas Knowles. mailto:schemer@kizoom.com</Contributor>
                <Coverage>United Kingdom</Coverage>
                <Creator>Created for TXC 2.0 Tom White, Kizoom mailto:schemer@kizoom.com</Creator>
                <Date>
                    <Created>2004-02-01</Created>
                </Date>
                <Date>
                    <Modified>2004-11-04</Modified>
                </Date>
                <Date>
                    <Modified>2004-07-07</Modified>
                </Date>
                                <Date>
                                    <Modified>2005-06-06</Modified>
                </Date>
                <Description>Common types for National Public Transport XML schemas.</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.naptan.org.uk/schemas/2.0/napt/}NaPT_common-v2-0.xsd</Identifier>
                <Language>[ISO 639-2/B] ENG</Language>
                <Publisher>Department for Transport, Great Minster House, 76 Marsham Street, London SW1P 4DR</Publisher>
                <Relation>
                    <Requires>http://www.w3.org/2001/xml.xsd</Requires>
                    <Requires>../apd/CommonSimpleTypes-v1-3.xsd</Requires>
                                <Requires>http://www.naptan.org.uk/schemas/2.0/napt/NaPT_types-v2-0.xsd</Requires>
                </Relation>
                <Rights>Unclassified
                               <Copyright>Crown Copyright 2000-2005</Copyright>
                </Rights>
                <Source>Factored out from 2.0 draft TransXChange and NapTAN schemas</Source>
                <Status>Version 2.0 Release</Status>
                <Subject>
                    <Category>Arts, recreation and travel, Tourism, Travel (tourism), Transport,
Public transport, Bus services, Coach services, Bus stops and stations
Rail transport, Infrastructure (railways),  Train services,
Roads and road transport</Category>
                    <Project>Transport Direct</Project>
                </Subject>
                <Title>Common types for National Public Transport XML schemas.</Title>
                <Type>Standard</Type>
            </Metadata>
        </xsd:appinfo>
        <xsd:documentation>NaPT Common type definitions</xsd:documentation>
    </xsd:annotation>
    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>
    <xsd:include schemaLocation="NaPT_types-v2-0.xsd"/>
    <!--====Basic Types =======================================================================-->
    <!--====Mode Enumerations =================================================================== -->
    <xsd:simpleType name="VehicleModesEnumeration">
        <xsd:annotation>
            <xsd:documentation>Modes of transport applicable to timetabled public transport.</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:NMTOKEN">
            <xsd:enumeration value="air"/>
            <xsd:enumeration value="bus"/>
            <xsd:enumeration value="coach"/>
            <xsd:enumeration value="ferry"/>
            <xsd:enumeration value="metro"/>
            <xsd:enumeration value="rail"/>
            <xsd:enumeration value="tram"/>
            <xsd:enumeration value="underground"/>
        </xsd:restriction>
    </xsd:simpleType>
    <xsd:simpleType name="ContinuousModesEnumeration">
        <xsd:annotation>
            <xsd:documentation>Modes of transport applicable to private and non-timetabled transport.</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:NMTOKEN">
            <xsd:enumeration value="walk"/>
            <xsd:enumeration value="car"/>
            <xsd:enumeration value="taxi"/>
            <xsd:enumeration value="cycle"/>
            <xsd:enumeration value="drt"/>
            <xsd:enumeration value="movingWalkway"/>
            <xsd:enumeration value="through"/>
        </xsd:restriction>
    </xsd:simpleType>
    <xsd:simpleType name="AllModesEnumeration">
        <xsd:annotation>
            <xsd:documentation>Union of vehicle and continuous modes.</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:NMTOKEN">
            <xsd:enumeration value="air"/>
            <xsd:enumeration value="bus"/>
            <xsd:enumeration value="coach"/>
            <xsd:enumeration value="ferry"/>
            <xsd:enumeration value="metro"/>
            <xsd:enumeration value="rail"/>
            <xsd:enumeration value="tram"/>
            <xsd:enumeration value="underground"/>
            <xsd:enumeration value="walk"/>
            <xsd:enumeration value="car"/>
            <xsd:enumeration value="taxi"/>
            <xsd:enumeration value="cycle"/>
            <xsd:enumeration value="drt"/>
            <xsd:enumeration value="movingWalkway"/>
            <xsd:enumeration value="through"/>
        </xsd:restriction>
        <!--    <xsd:union memberTypes="VehicleModesEnumeration ContinuousModesEnumeration"/>
             Union not used because of issue in MSM validator -->
    </xsd:simpleType>
    <xsd:complexType name="ModesStructure">
        <xsd:annotation>
            <xsd:documentation>Transport Modes</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
            <xsd:element name="Mode" type="AllModesEnumeration" maxOccurs="unbounded">
                <xsd:annotation>
                    <xsd:documentation>A method of transportation such as bus, rail, etc.</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
        </xsd:sequence>
        <xsd:attribute name="Exclude" type="xsd:boolean" use="optional" default="false"/>
    </xsd:complexType>
    <!-- ==== Modification Detail Definitions =================================================================== -->
    <xsd:simpleType name="ModificationEnumeration">
        <xsd:annotation>
            <xsd:documentation>Classification of modification as addition, deletion or revision. Enumerated value.</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:NMTOKEN">
            <xsd:enumeration value="new">
                <xsd:annotation>
                    <xsd:documentation>This is a definition of a new entity</xsd:documentation>
                </xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="delete">
                <xsd:annotation>
                    <xsd:documentation>This is a deletion of an existing entity</xsd:documentation>
                </xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="revise">
                <xsd:annotation>
                    <xsd:documentation>This is a revision to an existing entity.  All values are replaced.</xsd:documentation>
                </xsd:annotation>
            </xsd:enumeration>
        </xsd:restriction>
    </xsd:simpleType>
    <xsd:simpleType name="DeltaModificationEnumeration">
        <xsd:annotation>
            <xsd:documentation>Classification of modification as addition, deletion, revision or delta only. Enumerated value.</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:NMTOKEN">
            <xsd:enumeration value="new">
                <xsd:annotation>
                    <xsd:documentation>This is a definition of a new entity</xsd:documentation>
                </xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="delete">
                <xsd:annotation>
                    <xsd:documentation>This is a deletion of an existing entity</xsd:documentation>
                </xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="revise">
                <xsd:annotation>
                    <xsd:documentation>This is a revision to an existing entity.  All values are replaced.</xsd:documentation>
                </xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="delta">
                <xsd:annotation>
                    <xsd:documentation>This is a change to an existing enity. Only those values expliciitly supplied will be changed.</xsd:documentation>
                </xsd:annotation>
            </xsd:enumeration>
        </xsd:restriction>
    </xsd:simpleType>
    <xsd:simpleType name="RevisionNumberType">
        <xsd:annotation>
            <xsd:documentation>A revision number is an integer that should be increased by one each time the unit that is refers to is modified.</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:nonNegativeInteger"/>
    </xsd:simpleType>
    <xsd:simpleType name="StatusEnumeration">
        <xsd:annotation>
            <xsd:documentation>Indicates whether the entity this annotates is available for use. Use of this attribute allows entities to be retired without deleting the details from the dataset. </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:NMTOKEN">
            <xsd:enumeration value="active">
                <xsd:annotation>
                    <xsd:documentation>Entity is active.</xsd:documentation>
                </xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="inactive">
                <xsd:annotation>
                    <xsd:documentation>Entity is inactive.</xsd:documentation>
                </xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="pending">
                <xsd:annotation>
                    <xsd:documentation>Entity is still active but is in the process of being made inactive..</xsd:documentation>
                </xsd:annotation>
            </xsd:enumeration>
        </xsd:restriction>
    </xsd:simpleType>
    <xsd:attributeGroup name="RequiredModificationDetailsGroup">
        <xsd:annotation>
            <xsd:documentation>Grouping for modifications metadata. Creation Date required</xsd:documentation>
        </xsd:annotation>
        <xsd:attribute name="CreationDateTime" type="xsd:dateTime" use="required"/>
        <xsd:attribute name="ModificationDateTime" type="xsd:dateTime" use="optional"/>
        <xsd:attribute name="Modification" type="ModificationEnumeration" use="optional" default="new"/>
        <xsd:attribute name="RevisionNumber" type="RevisionNumberType" use="optional"/>
        <xsd:attribute name="Status" type="StatusEnumeration" use="optional" default="active"/>
    </xsd:attributeGroup>
    <xsd:attributeGroup name="ModificationDetailsGroup">
        <xsd:annotation>
            <xsd:documentation>Grouping for modifications metadata.</xsd:documentation>
        </xsd:annotation>
        <xsd:attribute name="CreationDateTime" type="xsd:dateTime" use="optional"/>
        <xsd:attribute name="ModificationDateTime" type="xsd:dateTime" use="optional"/>
        <xsd:attribute name="Modification" type="ModificationEnumeration" use="optional" default="new"/>
        <xsd:attribute name="RevisionNumber" type="RevisionNumberType" use="optional"/>
        <xsd:attribute name="Status" type="StatusEnumeration" use="optional" default="active"/>
    </xsd:attributeGroup>
    <xsd:attributeGroup name="DocumentModificationDetailsGroup">
        <xsd:annotation>
            <xsd:documentation>Grouping for modifications metadata for a document.</xsd:documentation>
        </xsd:annotation>
        <xsd:attribute ref="xml:lang"/>
        <xsd:attribute name="CreationDateTime" type="xsd:dateTime" use="required"/>
        <xsd:attribute name="ModificationDateTime" type="xsd:dateTime" use="required"/>
        <xsd:attribute name="Modification" type="ModificationEnumeration" use="required"/>
        <xsd:attribute name="RevisionNumber" type="RevisionNumberType" use="required"/>
        <xsd:attribute name="FileName" type="xsd:string" use="required">
            <xsd:annotation>
                <xsd:documentation>The name of the file containing the instance document.</xsd:documentation>
            </xsd:annotation>
        </xsd:attribute>
    </xsd:attributeGroup>
</xsd:schema>

