<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml/3.2" xmlns:oml="http://namespaces.os.uk/open/oml/1.0" xmlns:os="http://namespaces.os.uk/product/1.0" targetNamespace="http://namespaces.os.uk/open/oml/1.0" elementFormDefault="qualified" version="1.0">
	<import namespace="http://www.opengis.net/gml/3.2" schemaLocation="http://schemas.opengis.net/gml/3.2.1/gml.xsd"/>
	<import namespace="http://namespaces.os.uk/product/1.0" schemaLocation="https://www.ordnancesurvey.co.uk/xml/schema/product/1.0/OSProduct.xsd"/>
  <element name="Glasshouse" substitutionGroup="gml:AbstractFeature" type="oml:GlasshouseType"/>
  <complexType name="GlasshouseType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element name="geometry" type="gml:SurfacePropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="GlasshousePropertyType">
    <sequence minOccurs="0">
      <element ref="oml:Glasshouse"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="ElectricityTransmissionLine" substitutionGroup="gml:AbstractFeature" type="oml:ElectricityTransmissionLineType"/>
  <complexType name="ElectricityTransmissionLineType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element name="geometry" type="gml:CurvePropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="ElectricityTransmissionLinePropertyType">
    <sequence minOccurs="0">
      <element ref="oml:ElectricityTransmissionLine"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="RailwayStation" substitutionGroup="gml:AbstractFeature" type="oml:RailwayStationType"/>
  <complexType name="RailwayStationType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element name="distinctiveName" type="string"/>
          <element name="classification" type="gml:CodeType"/>
          <element name="geometry" type="gml:PointPropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="RailwayStationPropertyType">
    <sequence minOccurs="0">
      <element ref="oml:RailwayStation"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="RailwayTunnel" substitutionGroup="gml:AbstractFeature" type="oml:RailwayTunnelType"/>
  <complexType name="RailwayTunnelType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element name="geometry" type="gml:CurvePropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="RailwayTunnelPropertyType">
    <sequence minOccurs="0">
      <element ref="oml:RailwayTunnel"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="RoadTunnel" substitutionGroup="gml:AbstractFeature" type="oml:RoadTunnelType"/>
  <complexType name="RoadTunnelType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element name="geometry" type="gml:CurvePropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="RoadTunnelPropertyType">
    <sequence minOccurs="0">
      <element ref="oml:RoadTunnel"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="Roundabout" substitutionGroup="gml:AbstractFeature" type="oml:RoundaboutType"/>
  <complexType name="RoundaboutType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element name="classification" type="gml:CodeType"/>
          <element name="geometry" type="gml:PointPropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="RoundaboutPropertyType">
    <sequence minOccurs="0">
      <element ref="oml:Roundabout"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="FunctionalSite" substitutionGroup="gml:AbstractFeature" type="oml:FunctionalSiteType"/>
  <complexType name="FunctionalSiteType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element minOccurs="0" name="distinctiveName" type="string"/>
          <element name="siteTheme" type="gml:CodeType"/>
          <element name="classification" type="gml:CodeType"/>
          <element name="geometry" type="gml:MultiSurfacePropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="FunctionalSitePropertyType">
    <sequence minOccurs="0">
      <element ref="oml:FunctionalSite"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="ImportantBuilding" substitutionGroup="gml:AbstractFeature" type="oml:ImportantBuildingType"/>
  <complexType name="ImportantBuildingType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element minOccurs="0" name="distinctiveName" type="string"/>
          <element name="buildingTheme" type="gml:CodeType"/>
          <element name="classification" type="gml:CodeType"/>
          <element name="geometry" type="gml:SurfacePropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="ImportantBuildingPropertyType">
    <sequence minOccurs="0">
      <element ref="oml:ImportantBuilding"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="SurfaceWater_Line" substitutionGroup="gml:AbstractFeature" type="oml:SurfaceWater_LineType"/>
  <complexType name="SurfaceWater_LineType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element name="geometry" type="gml:CurvePropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="SurfaceWater_LinePropertyType">
    <sequence minOccurs="0">
      <element ref="oml:SurfaceWater_Line"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="Building" substitutionGroup="gml:AbstractFeature" type="oml:BuildingType"/>
  <complexType name="BuildingType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element name="geometry" type="gml:SurfacePropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="BuildingPropertyType">
    <sequence minOccurs="0">
      <element ref="oml:Building"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="Woodland" substitutionGroup="gml:AbstractFeature" type="oml:WoodlandType"/>
  <complexType name="WoodlandType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element name="geometry" type="gml:SurfacePropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="WoodlandPropertyType">
    <sequence minOccurs="0">
      <element ref="oml:Woodland"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="Road" substitutionGroup="gml:AbstractFeature" type="oml:RoadType"/>
  <complexType name="RoadType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element minOccurs="0" name="distinctiveName" type="string"/>
          <element minOccurs="0" name="roadNumber" type="string"/>
          <element name="classification" type="gml:CodeType"/>
          <element name="drawLevel" type="gml:CodeType"/>
          <element name="override" type="gml:CodeType"/>
          <element name="geometry" type="gml:CurvePropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="RoadPropertyType">
    <sequence minOccurs="0">
      <element ref="oml:Road"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="NamedPlace" substitutionGroup="gml:AbstractFeature" type="oml:NamedPlaceType"/>
  <complexType name="NamedPlaceType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element name="distinctiveName" type="string"/>
          <element name="classification" type="gml:CodeType"/>
          <element name="fontHeight" type="gml:CodeType"/>
          <element name="textOrientation" type="gml:MeasureType"/>
          <element name="geometry" type="gml:PointPropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="NamedPlacePropertyType">
    <sequence minOccurs="0">
      <element ref="oml:NamedPlace"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="MotorwayJunction" substitutionGroup="gml:AbstractFeature" type="oml:MotorwayJunctionType"/>
  <complexType name="MotorwayJunctionType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element name="junctionNumber" type="string"/>
          <element name="geometry" type="gml:PointPropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="MotorwayJunctionPropertyType">
    <sequence minOccurs="0">
      <element ref="oml:MotorwayJunction"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="TidalWater" substitutionGroup="gml:AbstractFeature" type="oml:TidalWaterType"/>
  <complexType name="TidalWaterType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element name="geometry" type="gml:SurfacePropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="TidalWaterPropertyType">
    <sequence minOccurs="0">
      <element ref="oml:TidalWater"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="CarChargingPoint" substitutionGroup="gml:AbstractFeature" type="oml:CarChargingPointType"/>
  <complexType name="CarChargingPointType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element name="featureCode" type="integer"/>
          <element name="chargeMethod" type="gml:CodeType"/>
          <element name="geometry" type="gml:PointPropertyType"/>
          <element name="ratedVoltage" type="gml:CodeType"/>
          <element name="type" type="gml:CodeType"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="CarChargingPointPropertyType">
    <sequence minOccurs="0">
      <element ref="oml:CarChargingPoint"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="TidalBoundary" substitutionGroup="gml:AbstractFeature" type="oml:TidalBoundaryType"/>
  <complexType name="TidalBoundaryType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element name="classification" type="gml:CodeType"/>
          <element name="geometry" type="gml:CurvePropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="TidalBoundaryPropertyType">
    <sequence minOccurs="0">
      <element ref="oml:TidalBoundary"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="SurfaceWater_Area" substitutionGroup="gml:AbstractFeature" type="oml:SurfaceWater_AreaType"/>
  <complexType name="SurfaceWater_AreaType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element name="geometry" type="gml:SurfacePropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="SurfaceWater_AreaPropertyType">
    <sequence minOccurs="0">
      <element ref="oml:SurfaceWater_Area"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="RailwayTrack" substitutionGroup="gml:AbstractFeature" type="oml:RailwayTrackType"/>
  <complexType name="RailwayTrackType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element name="classification" type="gml:CodeType"/>
          <element name="geometry" type="gml:CurvePropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="RailwayTrackPropertyType">
    <sequence minOccurs="0">
      <element ref="oml:RailwayTrack"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
  <element name="Foreshore" substitutionGroup="gml:AbstractFeature" type="oml:ForeshoreType"/>
  <complexType name="ForeshoreType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element name="geometry" type="gml:SurfacePropertyType"/>
          <element name="featureCode" type="integer"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>
  <complexType name="ForeshorePropertyType">
    <sequence minOccurs="0">
      <element ref="oml:Foreshore"/>
    </sequence>
    <attributeGroup ref="gml:AssociationAttributeGroup"/>
    <attributeGroup ref="gml:OwnershipAttributeGroup"/>
  </complexType>
</schema>
