LogoLogo
OS Docs HomeOS NGDOS APIsOS Download ProductsMore than MapsProduct Refresh Dates
  • OS Download Products' Documentation
  • Addressing and Location
    • Addressing and Location Portfolio Information
    • AddressBase Fundamentals
      • Release Notes
        • AddressBase Products May 2025 – Epoch 118
        • AddressBase Islands May 2025 – Epoch 118
        • AddressBase Products March 2025 – Epoch 117
        • AddressBase Islands March 2025 – Epoch 117
        • AddressBase Products February 2025 – Epoch 116
        • AddressBase Islands February 2025 – Epoch 116
        • AddressBase Products December 2024 – Epoch 115
        • AddressBase Islands December 2024 – Epoch 115
        • AddressBase Products November 2024 – Epoch 114
        • AddressBase Islands November 2024 – Epoch 114
        • AddressBase Products September 2024 – Epoch 113
        • AddressBase Islands September 2024 – Epoch 113
        • AddressBase Products August 2024 – Epoch 112
        • AddressBase Islands August 2024 – Epoch 112
        • AddressBase Products June 2024 – Epoch 111
        • AddressBase Islands June 2024 – Epoch 111
        • AddressBase Products May 2024 – Epoch 110
        • AddressBase Islands May 2024 – Epoch 110
        • AddressBase Products April 2024 – Epoch 109
        • AddressBase Islands April 2024 – Epoch 109
      • AddressBase product family
      • Future and past publication dates
      • Unique Property Reference Number (UPRN)
      • Coordinate reference systems
      • Classification scheme
      • Data sources
      • Street names and numbering
      • Currency, completeness and precision
      • Product supply
      • Code lists and enumerations
        • AddressbasePostalCode
        • BLPUStateCode
        • ChangeTypeCode
        • CountryCode
        • Date
        • FileTypeCode
        • LanguageCode
        • LogicalStatusCode
        • OfficialFlagCode
        • PostcodeTypeCode
        • RPCCode
        • StateCode
        • StreetClassificationCode
        • StreetRecordTypeCode
        • StreetStateCode
        • StreetSurfaceCode
        • Time
        • USRNMatchIndicatorCode
      • AddressBase local custodian codes
      • AddressBase Islands local custodian codes
    • AddressBase
      • Release Notes
      • AddressBase Getting Started Guide
        • Prerequisites
        • Data supply
        • Working with CSV data
        • Working with GML data
        • Working with COU data
        • Creating a single-line or multi-line address
        • Searching for addresses
      • AddressBase Technical Specification
        • Data formats
        • Supply and update
        • AddressBase structure
        • Feature types
          • Address
          • AddressBase Supply Set
        • Code list and enumerations
        • CSV to GML mapping
        • Example records
          • CSV
          • GML
      • AddressBase Downloads
      • AddressBase Known Data Issues
    • AddressBase Core
      • Release Notes
        • 20 May 2025
        • 13 May 2025
        • 07 May 2025
        • 29 April 2025
        • 23 April 2025
        • 15 April 2025
        • 08 April 2025
        • 01 April 2025
        • 25 March 2025
        • 18 March 2025
      • AddressBase Core Overview
        • Data capture and sources
        • GeoPlace
        • Unique Property Reference Number (UPRN)
        • Coordinate reference systems
        • Classification
        • Currency, completeness and precision
        • Product supply
      • AddressBase Core Getting Started Guide
        • Downloading a dataset
        • Working with CSV data
        • Working with GPKG data
        • Working with COU data
        • Working with tiled data
      • AddressBase Core Technical Specification
        • Data formats
        • Supply and update
        • Attributes
        • Enumerations
        • Example records
      • AddressBase Core Downloads
      • AddressBase Core Known Data Issues
    • AddressBase Plus
      • Release Notes
      • AddressBase Plus Getting Started Guide
      • AddressBase Plus Technical Specification
        • Data formats
        • Supply and update
        • AddressBase Plus structure
        • Feature types
          • Address
          • AddressBase Supply Set
        • Code lists and enumerations
        • CSV to GML mapping
        • Example records
          • CSV
          • GML
      • AddressBase Plus Downloads
      • AddressBase Plus Known Data Issues
    • AddressBase Plus Islands
      • Release Notes
      • AddressBase Plus Islands Getting Started Guide
      • AddressBase Plus Islands Technical Specification
        • Data formats
        • Supply and update
        • AddressBase Plus Islands structure
        • Feature types
          • Address
          • AddressBase Supply Set
        • Code lists and enumerations
        • CSV to GML mapping
        • Example records
          • CSV
          • GML
      • AddressBase Plus Islands Downloads
      • AddressBase Plus Islands Known Data Issues
    • AddressBase Premium
      • Release Notes
      • AddressBase Premium Getting Started Guide
        • Prerequisites
        • Data supply
        • Working with CSV data
        • Working with GPKG data
        • Working with GML data
        • Working with COU data
        • Creating a single-line or multi-line address
        • Searching for addresses
      • AddressBase Premium Technical Specification
        • Data formats
        • Supply and update
        • AddressBase Premium structure
        • Feature types
          • Street – (Type 11 Record)
          • BLPU – (Type 21 Record)
          • AddressBase supply set
          • Feature with lifecycle
        • Structured data types
          • Street Descriptor – (Type 15 Record)
          • Application Cross Reference – (Type 23 Record)
          • LPI – (Type 24 Record)
          • Delivery Point Address – (Type 28 Record)
          • Successor Cross Reference – (Type 30 Record)
          • Organisation – (Type 31 Record)
          • Classification – (Type 32 Record)
          • Entity with lifecycle
        • Dataset metadata
          • Metadata – (Type 29 Record)
          • Header – (Type 10 Record)
          • Trailer – (Type 99 record)
        • Code lists and enumerations
        • Attribute format comparison
        • Example records
          • CSV
          • GML
      • AddressBase Premium Downloads
      • AddressBase Premium Known Data Issues
    • AddressBase Premium Islands
      • Release Notes
      • AddressBase Premium Islands Getting Started Guide
      • AddressBase Premium Islands Technical Specification
        • Release Notes
          • June 2024
        • Data formats
        • Supply and update
        • AddressBase Premium Islands structure
        • Feature types
          • Street – (Type 11 Record)
          • BLPU – (Type 21 Record)
          • AddressBase supply set
          • Feature with lifecycle
        • Structured data types
          • Street Descriptor – (Type 15 Record)
          • Application Cross Reference – (Type 23 Record)
          • LPI – (Type 24 Record)
          • Delivery Point Address – (Type 28 Record)
          • Successor Cross Reference – (Type 30 Record)
          • Organisation – (Type 31 Record)
          • Classification – (Type 32 Record)
          • Entity with lifecycle
        • Dataset metadata
          • Header – (Type 10 Record)
          • Metadata – (Type 29 Record)
          • Trailer – (Type 99 record)
        • Code lists and enumerations
        • Attribute format comparison
        • Example records
          • CSV
          • GML
      • AddressBase Premium Islands Downloads
      • AddressBase Premium Islands Known Data Issues
    • Boundary-Line
      • Release Notes
        • May 2025
        • October 2024
        • June 2024
      • Boundary-Line Overview
        • Data overview
        • Product supply
      • Boundary-Line Product Information
        • Relationships of administrative areas
        • Structure of Boundary-Line
        • Boundary-Line principles and features
        • Case studies
        • Metadata
        • Glossary
        • Exception areas
        • The coastline and associated items
      • Boundary-Line Technical Specification
        • Shapefile, TAB and GKPG
          • Features - Shapefile, TAB and GPKG
            • Area - GB
            • Area - English region
            • Area - Wales region
            • Link feature type
            • Area - Polling districts England
            • Historical and ceremonial boundaries features
          • Layers - Shapefile, TAB and GKPG
            • Shapefile
            • TAB
            • GKPG
          • Code lists - Shapefile, TAB and GKPG
            • AreaCode
            • TypeCode
        • GML
          • Features - GML
            • AdministrativeUnit
          • Code lists - GML
            • AdministrativeHierarchyValue
            • NationalClassificationValue
          • Example record - GML
        • Vector tiles
      • Guide to Ceremonial County Boundaries
      • Additional Product Details
      • Boundary-Line Downloads
      • Boundary-Line Known Data Issues
    • Code-Point
      • Code-Point Overview
        • Product details
        • Product supply
      • Code-Point Products Comparison
      • Code-Point Getting Started Guide
        • Product supply
        • Data structure
        • CSV file processing
        • Data measures
        • Metadata
        • Glossary
      • Code-Point Technical Specification
        • Product structure
        • Supply formats
      • Code-Point Downloads
      • Code-Point Known Data Issues
    • Code-Point Open
      • Code-Point Open Overview
        • Product details
        • Product supply
      • Code-Point Open Products Comparison
      • Code-Point Open Getting Started Guide
        • Requirements for using the data
        • CSV file processing
        • Data measures
        • Loading the data into a GIS
        • Glossary
      • Code-Point Open Technical Specification
        • Product structure
        • Supply formats overview
      • Code-Point Open Downloads
      • Code-Point Open Known Data Issues
    • Code-Point with Polygons
      • Release Notes
        • January 2025
      • Code-Point with Polygons Overview
        • Product details
        • Product supply
      • Code-Point with Polygons Products Comparison
      • Code-Point with Polygons Getting Started Guide
        • Using the vertical street lookup
        • Creating single-space postcodes
        • Data measures
      • Code-Point with Polygons Technical Specification
        • Data supply
        • Specification
      • Code-Point with Polygons Downloads
      • Code-Point with Polygons Known Data Issues
    • 🆕OS Emergency Services Gazetteer
      • 🆕OS ESG Overview
        • 🆕Product supply
        • 🆕Planned enhancements
      • OS ESG Getting Started Guide
      • OS ESG Technical Specification
        • Feature type
          • BLPU (Type 21 Record)
        • Structured data types
          • LPI (Type 24 Record)
          • Classification (Type 32 Record)
        • 🆕Code lists
          • AddressbasePostalCode
          • BLPUStateCode
          • ChangeTypeCode
          • 🆕ClassificationCode
          • CountryCode
          • FileTypeCode
          • LanguageCode
          • LogicalStatusCode
          • OfficialFlagCode
          • RPCCode
          • USRNMatchIndicatorCode
        • Dataset metadata
          • Header (Type 10 Record)
          • Metadata (Type 29 Record)
          • Trailer (Type 99 Record)
      • 🆕OS ESG FAQs
      • 🆕OS ESG Downloads
      • OS ESG Known Data Issues
    • OS Open Built Up Areas
      • Release notes
        • April 2024
      • OS Open Built Up Areas Overview
        • Product details
        • Product supply
      • OS Open Built Up Areas Technical Specification
        • Feature types
          • Built Up Areas
          • Built Up Extents
          • Non Built Up Extents
        • Structured data types
          • MultiSurfaceWithAreaType
          • NameType
        • Code list
          • LanguageValue
        • Supply formats
      • OS Open Built Up Areas Known Data Issues
    • OS Open Names
      • Release Notes
        • April 2025
        • January 2025
        • October 2024
        • July 2024
      • OS Open Names Overview
        • Product applications
        • Product details
        • Product supply
      • OS Open Names Getting Started Guide
        • Obtaining OS Open Names data
        • CSV file processing
        • Loading the data in a GIS
      • OS Open Names Technical Specification
        • Source of OS Open Names
        • Viewing resolution
        • Product structure
        • Feature type
          • NamedPlace
        • Code lists
          • LanguageValue
          • NamedPlaceTypeValue
          • LocalTypeValue
        • Structured data types
          • GeographicalName
          • Identifier
        • Local Type
        • Supply formats overview
        • Attribute naming format comparison
        • LocalType code list
      • OS Open Names Downloads
      • OS Open Names Known Data Issues
    • Points of Interest
      • Release Notes
        • March 2025
        • December 2024
        • September 2024
        • June 2024
      • Points of Interest Product Information
        • Using Points of Interest
        • Data measures and data sources
        • Classification scheme
        • Points of Interest Provenance
        • Glossary
        • Points of Interest symbology
      • Points of Interest Technical Specification
        • Using Points of Interest
        • Pipe delimited text (PDT) file format
          • Record structure
        • Code lists
          • Positional Accuracy
          • Match Indicator
        • Example records
        • Glossary
      • Points of Interest Classification Scheme
        • Accommodation, eating and drinking
        • Commercial services
        • Attractions
        • Sport and entertainment
        • Education and health
        • Public infrastructure
        • Manufacturing and production
        • Retail
        • Transport
      • Points of Interest Class Count
        • Accommodation, eating and drinking
        • Commercial services
        • Attractions
        • Sport and entertainment
        • Education and health
        • Public infrastructure
        • Manufacturing and production
        • Retail
        • Transport
      • Points of Interest Downloads
      • Points of Interest Known Data Issues
  • Contextual or derived mapping
    • Contextual or Derived Mapping Portfolio Information
    • Colour Raster Map Fundamentals
      • Colour Raster Map Overview
        • Metadata
        • Data compression
        • Data measures
        • Product supply
      • Colour Raster Map Technical Specification
        • Georeferencing
        • Image file directory (TIFF)
        • Abbreviations used on OS 1:25 000 and 1:50 000 scale mapping
        • Product glossary
    • 1:25 000 Scale Colour Raster
      • 1:25 000 Scale Colour Raster Overview
        • Product details
        • Features depicted in the product
        • Georeferencing
      • 1:25 000 Scale Colour Raster Technical Specification
      • 1:25 000 Scale Colour Raster Downloads
      • 1:25 000 Scale Colour Raster Known Data Issues
    • 1:50 000 Scale Colour Raster
      • 1:50 000 Scale Colour Raster Overview
        • Product details
        • Features depicted in the product
        • Georeferencing
      • 1:50 000 Scale Colour Raster Technical Specification
      • 1:50 000 Scale Colour Raster Downloads
      • 1:50 000 Scale Colour Raster Known Data Issues
    • 1:250 000 Scale Colour Raster
      • 1:250 000 Scale Colour Raster Overview
        • Product details
        • Georeferencing
        • Gazetteer
      • 1:250 000 Scale Colour Raster Technical Specification
      • 1:250 000 Scale Colour Raster Downloads
      • 1:250 000 Scale Colour Raster Known Data Issues
    • GB Overview Maps
      • GB Overview Maps Downloads
      • GB Overview Maps Known Data Issues
    • MiniScale
      • MiniScale Product Guide
        • Supply and formats
        • Georeferencing
        • Depiction of roads and towns
        • Data compression
        • Features, layers and styles
      • MiniScale Technical Specification
        • National Grid
        • MiniScale file management
      • MiniScale Downloads
      • Miniscale Known Data Issues
    • OS Open Zoomstack
      • OS Open Zoomstack Getting Started Guide
        • Zoomstack vector tiles
        • Zoomstack GeoPackage format
      • OS Open Zoomstack Technical Specification
        • List of Layers
        • Description of the cartographic styles
        • Sea Extent and Name Languages
        • Vector Tiles Schema
        • GeoPackage Schema
      • OS Open Zoomstack Known Data Issues
    • OS OpenMap – Local
      • Release Notes
        • April 2025
      • OS OpenMap – Local Overview
        • Product applications and uses
        • Product details
        • Product supply
      • OS OpenMap – Local Getting Started Guide
        • Loading raster data
        • Loading vector data
        • Loading and displaying GML Data
        • POSTGIS
        • Loading and displaying Shapefile supply
        • Viewing the data in QGIS
        • Using shapefiles in PostGIS
        • Using MapInfo Professional
      • OS OpenMap – Local Technical Specification
        • Data structure
        • Feature types
          • Building
          • ElectricityTransmissionLine
          • Glasshouse
          • RailwayStation
          • RailwayTrack
          • RailwayTunnel
          • Road
          • RoadTunnel
          • Roundabout
          • MotorwayJunction
          • CarChargingPoint
          • Foreshore
          • SurfaceWater_Area
          • SurfaceWater_Line
          • TidalBoundary
          • TidalWater
          • Woodland
          • FunctionalSite
          • ImportantBuilding
          • NamedPlace
        • Code lists
          • RailwayStationClassification
          • RailwayTrackClassification
          • DrawLevelValue
          • OverrideValue
          • RoadClassification
          • RoundaboutClassification
          • CarChargingType
          • RatedVoltage
          • ChargeMethod
          • TidalBoundaryClassification
          • BuildingTheme
          • BuildingClassification
          • SiteClassification
          • FontHeightClassification
          • NamedPlaceClassification
      • OS OpenMap – Local Downloads
      • OS OpenMap – Local Known Data Issues
    • OS VectorMap District
      • OS VectorMap District Overview
        • Generalisation
        • Feature types
        • Style definition
        • Product supply
      • OS VectorMap District Technical Specification
        • GML Overview
        • Raster Specification
        • Georeferencing
        • Feature types
          • Building
          • ElectricityTransmissionLine
          • Glasshouse
          • RailwayStation
          • RailwayTrack
          • RailwayTunnel
          • MotorwayJunction
          • Road
          • RoadTunnel
          • Roundabout
          • Foreshore
          • SurfaceWater_Area
          • SurfaceWater_Line
          • TidalBoundary
          • TidalWater
          • Ornament
          • Woodland
          • FunctionalSite
          • NamedPlace
          • SpotHeight
          • AdministrativeBoundary
        • Code lists
          • RailwayStationClassification
          • RailwayTrackClassification
          • RoadClassification
          • RoundaboutClassification
          • DrawLevelValue
          • OverrideValue
          • TidalBoundaryClassification
          • FunctionalSiteClassification
          • NamedPlaceClassification
          • FontHeightClassification
          • AdministrativeBoundaryClassification
        • Attributes
        • Feature Codes
        • Styling of Land and Sea
      • Vector Simple Guide
        • Downloading OS OpenData
        • Opening OS OpenData in QGIS
        • Styling vector data
        • Opening and saving maps in Composer
      • Raster Simple Guide
        • Downloading OS OpenData
        • Opening OS OpenData in QGIS
        • Opening and saving a map in composer
      • OS VectorMap District Downloads
      • OS VectorMap District Known Data Issues
    • OS VectorMap Local
      • Release Notes
        • January 2025
      • OS VectorMap Local Overview
        • Product details
        • Features represented in the product
        • Product style definition
        • Product supply
        • National Grid coverage for OS VectorMap Local
      • OS VectorMap Local Technical Specification
        • GeoPackage overview
        • GML overview
        • Raster data
        • Feature types
          • Area
          • Line
          • VectorMapPoint
          • RoadCLine
          • RailCLine
          • Text
        • Code lists
          • DrawLevelValue
          • AnchorPositionValue
          • TextFontValue
        • Structured data types
          • textRenderingType
        • Feature codes and descriptions
        • Vector tiles overview
        • Important Buildings classification
      • OS VectorMap Local Downloads
      • Supporting documents
        • OS VectorMap Local Cartographic Style Definitions
      • OS VectorMap Local Known Data Issues
  • Networks
    • Networks Portfolio Information
    • OS Detailed Path Network
      • OS Detailed Path Network Overview
        • Product details
        • Attribution
        • Product supply
        • Coordinate reference system
      • OS Detailed Path Network Getting Started Guide
        • Downloading the data
        • Loading GML data
      • OS Detailed Path Network Technical Specification
        • OS Detailed Path Network structure
        • Feature types
          • Route
          • RouteLink
          • RouteNode
        • Structured data types
          • VerticalGainType
        • Code lists
          • LevelCodeValue
          • PotentialHazardValue
          • RightOfWayValue
          • RouteDescriptiveGroupValue
          • RouteDescriptiveTermValue
          • RouteLinkDescriptiveTermValue
          • RouteNodeDescriptiveTermValue
          • SurfaceTypeValue
        • Data quality
        • GML overview
        • GeoPackage overview
          • Route
          • RouteLink
          • RouteNode
        • Vector Tiles overview
          • Route
          • RouteLink
        • GML examples
      • OS Detailed Path Network Downloads
      • OS Detailed Path Network Known Data Issues
    • OS MasterMap Highways Network Fundamentals
      • Release Notes
        • May 2025
        • April 2025
        • March 2025
        • February 2025
        • January 2025
        • December 2024
        • November 2024
        • October 2024
        • September 2024
        • August 2024
        • July 2024
        • June 2024
      • OS MasterMap Highways Network Product Family
      • OS MasterMap Highways Network Overview
        • Standards
        • Coordinate reference system
        • Feature types
          • Road Link (present in Roads & RAMI products)
          • Road Node (present in Roads & RAMI products)
          • Path Link (present in Paths product)
          • Path Node (present in Paths product)
          • Connecting Link (present in Paths product)
          • Connecting Node (Present in Paths product)
          • Road (present in Roads & RAMI products)
          • Path (present in Paths product)
          • Street (present in all OS MasterMap Highways Network products)
          • Road Junction (present in Roads & RAMI products)
          • Ferry Link (present in all OS MasterMap Highways Network products)
          • Ferry Node (present in all OS MasterMap Highways Network products)
          • Ferry Terminal (present in all OS MasterMap Highways Network products)
          • Access Restrictions (present in RAMI product)
          • Turn Restrictions (present in RAMI product)
          • Restrictions For Vehicles (present in RAMI product)
          • Hazards (present in RAMI product)
          • Structures (present in RAMI product)
          • Maintenance (present in RAMI & Paths products)
          • Reinstatement (present in RAMI & Paths products)
          • Highways Dedication (present in RAMI & Paths products)
          • Special Designations (present in RAMI & Paths products)
        • Product supply
        • Product packaging
        • File naming
        • Feature validation data set
        • Volume feature count
        • OS Open Roads Lookup Table
      • OS MasterMap Highways Network Getting Started Guide
        • What do I need to use this data?
        • Product supply
        • Coverage
        • Product packaging
        • File naming
        • Unzipping GML, GeoPackage, and vector tiles files
        • Loading OS MasterMap Highways Network products into a GIS
        • Relationships between Highways tables
      • OS MasterMap Highways Network Playbook
        • Connecting to Address Data
        • Identifying Change in the Network
        • Highlighting Roads Under Construction
        • Creating a Map of Winter Gritting Routes
        • Adding Road Names and Numbers to a Map
        • Merging Tables and Dropping Geometry
        • Creating a Routable Network
      • OS MasterMap Highways Network Downloads
      • OS MasterMap Highways Network Known Data Issues
    • OS MasterMap Highways Network – Roads
      • OS MasterMap Highways Network Overview
      • OS MasterMap Highways Network – Roads Technical Specification
        • Specification changes
        • Structure
        • How the product fits together
        • Change-Only Update (COU) supply
        • Feature types
          • RoadLink
          • RoadNode
          • Road
          • Street
          • RoadJunction
          • FerryLink
          • FerryNode
          • FerryTerminal
        • Structured data types
          • identifier
          • OperationalStateType
          • DesignatedNameType
          • ResponsibleAuthority
          • CycleFacilityType
          • ElevationGainType
          • RoadWidthType
        • Code lists and Enumerations
          • ChangeValue
          • RoadClassificationValue
          • RoadFunctionValue
          • MatchStatusValue
          • OperationalStateValue
          • ProvenanceSourceValue
          • RoadStructureValue
          • LinkDirectionValue
          • FormOfWayValue
          • CycleFacilityValue
          • RoadWidthConfidenceLevelValue
          • FormOfRoadNodeValue
          • RoadNodeClassificationValue
          • AccessPointValue
          • StreetTypeValue
          • JunctionTypeValue
          • ConnectionTypeValue
          • FormOfWaterwayNodeValue
        • GML overview
        • GeoPackage overview
          • ferry_link
          • ferry_node
          • ferry_terminal
          • road
          • road_junction
          • road_link
          • road_node
          • street
        • Vector tiles overview
          • ferry_link
          • ferry_node
          • ferry_node
          • road_link
          • road_node
          • street
        • GML examples
      • OS MasterMap Highways Network Getting Started Guide
      • OS MasterMap Highways Network Known Data Issues
    • OS MasterMap Highways Network – Routing and Asset Management Information
      • OS MasterMap Highways Network Overview
      • OS MasterMap Highways Network – Routing and Asset Management Information Technical Specification
        • Specification changes
        • How the product fits together
        • Routing and Asset Management feature information
          • Data types
            • NetworkReference
            • NodeReference
            • LinkReference
            • PointReference
            • Multiple Link Reference
            • Point Reference
        • Common attribution
        • Rights and Restrictions
          • Feature types
            • AccessRestriction
            • HighwayDedication
            • TurnRestriction
            • RestrictionForVehicles
        • Advisory information
          • Feature types
            • Hazard
            • Structure
        • Asset management
          • Feature types
            • Maintenance
            • Reinstatement
            • Special Designation
        • Change-Only Update (COU) supply
        • Code lists and enumerations
          • ChangeValue
          • UseTypeValue
          • VehicleTypeValue
          • LoadTypeValue
          • NamedDateValue
          • NamedDayValue
          • NamedPeriodValue
          • NamedTimeValue
          • AccessRestrictionValue
          • DedicationValue
          • TurnRestrictionValue
          • RestrictionTypeValue
          • HazardTypeValue
          • StructureTypeValue
          • ReinstatementTypeValue
          • SpecialDesignationTypeValue
          • LinkDirectionValue
          • MaintenanceValue
        • Data types
          • TemporalPropertyType
          • DateRangeType
          • DayPropertyType
          • TimePropertyType
          • TimeRangeType
          • TrafficRegulationOrderType
          • VehicleQualifier
          • ResponsibleAuthority
          • Identifier
        • GML overview
        • GeoPackage overview
          • Access Restriction
          • Highway Dedication
          • Turn Restriction
          • Restriction for Vehicles
          • Hazard Point
          • Hazard
          • Structure Point
          • Structure
          • Maintenance
          • Maintenance Point
          • Maintenance Line
          • Maintenance Area
          • Reinstatement
        • GML examples
      • OS MasterMap Highways Network Getting Started Guide
      • OS MasterMap Highways Network Known Data Issues
    • OS MasterMap Highways Network – Paths
      • OS MasterMap Highways Network Overview
      • OS MasterMap Highways Network – Paths Technical Specification
        • Specification changes
        • Structure
        • How does the product fit together?
        • Change-Only Update (COU) Supply
        • Feature types
          • PathLink
          • PathNode
          • ConnectingLink
          • ConnectingNode
          • Path
          • Street
          • FerryLink
          • FerryNode
          • FerryTerminal
          • Maintenance
          • Reinstatement
          • SpecialDesignation
          • HighwayDedication
        • Structured data types
          • Identifier
          • CycleFacilityType
          • ElevationGainType
          • OperationalStateType
          • DesignatedNameType
          • ResponsibleAuthority
          • TemporalPropertyType
          • DateRangeType
          • DayPropertyType
          • TimePropertyType
          • TimeRangeType
        • Data types
          • NetworkReferenceLocation
          • Temporal Properties
        • Code lists and Enumerations
          • ChangeValue
          • FormOfWayValue
          • SurfaceTypeValue
          • MatchStatusValue
          • ProvenanceSourceValue
          • CycleFacilityValue
          • FormOfRoadNodeValue
          • RoadNodeClassificationValue
          • OperationalStateValue
          • StreetTypeValue
          • ConnectionTypeValue
          • FormOfWaterwayNodeValue
          • DedicationValue
          • ReinstatementTypeValue
          • SpecialDesignationTypeValue
          • MaintenanceValue
        • GML Overview
        • GeoPackage overview
          • connecting_link
          • connecting_node
          • ferry_link
          • ferry_node
          • ferry_terminal
          • highway_dedication
          • maintenance
          • path
          • path_link
          • path_node
          • reinstatement
          • special_designation
          • street
        • Vector tiles overview
          • connecting_node
          • ferry_link
          • ferry_node
          • highway_dedication
          • path_link
          • path_node
          • street
        • GML examples
      • OS MasterMap Highways Network Getting Started Guide
      • OS MasterMap Highways Network Known Data Issues
    • OS MasterMap Water Network Layer
      • Release Notes
        • April 2025
        • January 2025
        • October 2024
        • April 2024
      • OS MasterMap Water Network Layer Overview
        • Feature types in the product
        • Standards and CRS
        • Product supply
      • OS MasterMap Water Network Layer Getting Started Guide
        • Requirements for using the data
        • Structure of the supplied data
        • Loading GML data into a GIS
        • Creating a water network using ESRI software
      • OS MasterMap Water Network Layer Technical Specification
        • Product notes
          • January 2022 product notes
        • Product structure
        • Feature types
          • WatercourseLink
          • HydroNode
        • Structured data types
          • LinearReference
          • PointReference
        • Code lists and enumerations
          • LinkDirectionValue
          • WatercourseFormValue
          • WatercourseProvenanceValue
          • LevelOfDetailValue
          • ReasonForChangeValue
          • VerticalPositionValue
          • HydroNodeCategoryValue
          • WatercourseTypeValue
        • Feature types for future release
          • WatercourseSeparatedCrossing
          • WatercourseLinkSet
          • WatercourseInteraction
        • GML overview
        • GeoPackage overview
          • WatercourseLink
          • HydroNode
        • Vector tiles overview
          • Attribute naming differences
          • HydroNode
        • Data provenance
        • Additional resources
      • OS MasterMap Water Network Layer Downloads
      • OS MasterMap Water Network Layer Known Data Issues
    • 🆕OS Multi-modal Routing Network
      • OS MRN Overview
        • Product supply
        • Coordinate reference system
        • Feature types overview
          • Transport Link overview
          • Transport Node overview
          • Turn Restriction overview
        • OpenStreetMap schema
        • Modal change
        • Grade separation
      • OS MRN Getting Started Guide
        • pgRouting
        • GraphHopper
        • OpenTripPlanner
        • Working with OpenStreetMap files
      • OS MRN Technical Specification
        • Feature types
          • Transport Link
          • Transport Node
          • Turn Restriction
        • Code lists
          • AccessValue
          • BridgeValue
          • FordValue
          • HighwayValue
          • JunctionValue
          • OneWayValue
          • RailServiceValue
          • RailwayValue
          • RestrictionLabelValue
          • RouteValue
          • TunnelValue
      • OS MRN Known Data Issues
    • OS Open Rivers
      • Release notes
        • April 2025
        • October 2024
      • OS Open Rivers Overview
        • OS Open Rivers Data
        • Product supply
        • Coverage and file sizes
      • OS Open Rivers Technical Specification
        • Product structure
        • Feature types
          • WatercourseLink
          • HydroNode
        • Code lists
          • LinkDirectionValue
          • WatercourseFormValue
          • HydroNodeCategoryValue
        • GML overview
        • Esri shapefile overview
          • WatercourseLink
          • HydroNode
        • GeoPackage overview
          • GeoPackage format changes April 2023
          • WatercourseLink
          • HydroNode
        • Vector tiles overview
          • Vector tiles schema
          • WatercourseLink
          • HydroNode
      • OS Open Rivers Downloads
      • OS Open Rivers Known Data Issues
    • OS Open Roads
      • Release notes
        • April 2025
        • October 2024
        • April 2024
      • OS Open Roads Overview
        • OS Open Roads Data
        • Feature types
        • Product supply
        • Coverage and file sizes
      • OS Open Roads Technical Specification
        • Product structure
        • Feature types
          • RoadLink
          • RoadNode
          • MotorwayJunction
        • Code lists and enumerations
          • RoadClassificationValue
          • RoadFunctionValue
          • FormOfWayValue
          • RoadStructureValue
          • FormOfRoadNodeValues
        • GML overview
        • Esri shapefile overview
          • RoadLink
          • RoadNode
        • GeoPackage overview
          • RoadLink
          • RoadNode
        • Vector Tiles overview
          • RoadLink
          • RoadNode
          • MotorwayJunction
      • OS Open Roads Downloads
      • OS Open Roads Known Data Issues
  • Topography
    • Topography Portfolio Information
    • OS MasterMap Topography Layer – Building Height Attribute
      • Release Notes
        • April 2025
        • October 2024
        • April 2024
      • OS MasterMap Topography Layer – Building Height Attribute Overview
        • Product details
        • Product attributes
        • Product supply information
        • Product data
      • OS MasterMap Topography Layer – Building Height Attribute Getting Started Guide
        • What do I need to use this data?
        • Product supply information
        • Managing .csv data
        • Loading data into a GIS
        • Joining Building Height Attribute data to a OS MasterMap Topography Layer
        • Importing data into a database
      • OS MasterMap Topography Layer – Building Height Attribute Technical Specification
        • Product supply
        • Product structure
        • Feature type
          • Building Height Attribute
        • Code list
          • BHA_ConfValue
        • Example record
      • OS MasterMap Topography Layer – Building Height Attribute Downloads
      • OS MasterMap Topography Layer – Building Height Attribute Known Data Issues
    • OS MasterMap Greenspace Layer
      • Release Notes
        • April 2025
        • October 2024
      • OS MasterMap Greenspace Layer Overview
        • Product details
        • Function and form
        • Data creation
        • Product supply
      • OS MasterMap Greenspace Layer Getting Started Guide
        • Using GeoPackage and Vector Tile formats
        • QGIS
        • ArcGIS ArcMap
        • PostGIS
        • MapInfo Professional
        • CadCorp Map Modeller
        • Loading the data
      • OS MasterMap Greenspace Layer Technical Specification
        • Product classification and structure
        • Feature types
          • Greenspace Area
        • Code lists and Enumerations
          • Function
          • Form
        • Function hierarchy
        • Form hierarchy
        • OS Open Greenspace lookup table
        • GML overview
        • ESRI Shapefile overview
        • GeoPackage overview
        • Vector Tiles overview
        • Attribute mapping
        • GML example record
      • OS MasterMap Greenspace Layer Downloads
      • OS MasterMap Greenspace Layer Known Data Issues
    • OS MasterMap Sites Layer
      • Release Notes
        • April 2025
        • October 2024
        • April 2024
      • OS MasterMap Sites Layer Overview
        • Product details
        • Product supply
        • Coordinate reference systems
        • Product glossary
      • OS MasterMap Sites Layer Getting Started Guide
        • QGIS
        • Cadcorp SIS Desktop
        • FME Desktop
        • ArcGIS and ArcMap
        • MapInfo Professional
        • Astun Technology GML/KML Loader
      • OS MasterMap Sites Layer Technical Specification
        • Data specification overview
        • Theme definitions
          • Air transport
          • Education
          • Medical care
          • Rail transport
          • Road transport
          • Water transport
          • Utility or industrial
        • Functional site extent overview
        • Access point overview
        • Routing point overview
        • Feature types
          • FunctionalSite
          • AccessPoint
          • RoutingPoint
        • Enumerations
          • FunctionStatusValue
          • StakeholderRoleValue
          • ExtentDefinitionValue
          • AccessTypeValue
          • NatureOfAccessValue
          • AccessUseRestrictionValue
          • AccessMechanismValue
          • AccessDirectionValue
          • ReasonForChangeValue
        • Code lists
          • FunctionValue
          • FunctionThemeValue
        • Geometry
        • GML
        • GeoPackage
          • Functional Site attributes
          • Access Point attributes
          • Routing Point
        • Vector tiles
      • OS MasterMap Sites Layer Downloads
      • OS MasterMap Sites Layer Known Data Issues
    • OS MasterMap Topography Layer
      • Release Notes
        • April 2025
        • March 2025
        • February 2025
        • December 2024
        • November 2024
        • September 2024
        • August 2024
        • June 2024
        • May 2024
        • April 2024
      • Product Refresh Dates
      • OS MasterMap Topography Layer Overview
        • Product purpose
        • Product applications
        • Product details
        • Styling
        • Product themes
        • Coordinate reference systems
        • Product supply
          • Product supply mechanism and options
          • GML supply options
          • Updating data holdings
        • Change management and data association
      • OS MasterMap Topography Layer Getting Started Guide
        • QGIS
        • ArcGIS Pro
        • ArcMap
        • Cadcorp SIS Desktop Express
        • MapInfo Professional
        • FME Desktop
        • Astun Technology GML/KML Loader
      • OS MasterMap Topography Layer Getting Started with Styling Guide
        • Styling method overview
        • How to use the SQL scripts
        • How to use the stylesheets
        • Attribute tables
      • OS MasterMap Topography Layer Standard Styling Specification
        • Cartographic styling
        • Cartographic style definitions
        • Cartographic styling for new descriptive terms
          • TopographicArea
          • TopographicLine
          • TopographicPoint
        • Shared symbol geometry
        • Point symbols
        • Fill symbols
        • Compound symbols
        • Pattern definitions
        • Line styles
        • Cartographic descriptive term style definitions
      • OS MasterMap Topography Layer Technical Specification
        • File naming
        • Supply mechanisms
        • Product themes
          • Administrative Boundaries
          • Buildings
          • Heritage and Antiquities
          • Land
          • Rail
          • Roads, Tracks, and Paths
          • Structures
          • Terrain and Height
          • Water
        • Feature types
          • TopographicPoint
          • TopographicLine
          • TopographicArea
          • BoundaryLine
          • CartographicSymbol
          • CartographicText
        • Complex attributes
          • ChangeHistoryType
          • HeightAboveDatumType
          • HeightAboveGroundLevelType
          • TextRenderingType
        • Enumerations
          • ThemeValue
          • DescriptiveGroupValue
          • AccuracyOfPositionValue
          • ReasonForChangeValue
          • PhysicalPresenceValue
          • MakeValue
          • DescriptiveTermValue
        • Geometric data types
        • Topology
        • Seamless data supply
        • Feature lifecycles and tracking change
          • Polygon feature lifecycle rules
          • Line feature lifecycle rules
          • General point feature lifecycle rules
        • GML overview
          • GML examples
        • GeoPackage overview
        • Vector tiles overview
        • Attribute mapping
        • Geometry mapping
        • COU overview
        • Feature code lookup table
        • Change value descriptions
        • Administrative boundary alignments
      • OS MasterMap Topography Layer Downloads
      • OS MasterMap Topography Layer Known Data Issues
    • OS Open Greenspace
      • Release Notes
        • April 2025
        • October 2024
      • OS Open Greenspace Overview
        • Product details
        • Data creation
        • Product supply
      • OS Open Greenspace Getting Started Guide
        • QGIS
        • ESRI ArcGIS
        • PostGIS
        • MapInfo Professional
        • Cadcorp Map Modeller
      • OS Open Greenspace Technical Specification
        • Data structure
        • Feature types
          • GreenspaceSite
          • AccessPoint
        • Code lists
          • AccessTypeValue
          • FunctionValue
        • GML overview
        • GeoPackage overview
        • Vector tiles overview
        • Attribute mapping
      • OS Open Greenspace Downloads
      • OS Open Greenspace Known Data Issues
  • Identifiers
    • Identifiers Portfolio Information
    • OS Open Identifiers Family Information
    • OS Open Linked Identifiers
      • Release Notes
        • May 2025 – Epoch 43
        • March 2025 – Epoch 42
        • February 2025 – Epoch 41
        • January 2025 – Epoch 40
        • November 2024 – Epoch 39
        • October 2024 – Epoch 38
        • August 2024 – Epoch 37
        • July 2024 – Epoch 36
      • OS Open Linked Identifiers Overview
        • Uses of OS Open Linked Identifiers
        • Product details
      • OS Open Linked Identifiers Getting Started Guide
        • Linked identifiers
        • Instructions to install/load into a database application
      • OS Open Linked Identifiers Technical Specification
        • Product structure
        • Linked Identifier data (CSV) attributes
        • Product Version Information file (JSON)
        • RoadLink_TOID_TopographicArea_TOID_2
        • Road_TOID_TopographicArea_TOID_3
        • Street_USRN_TopographicArea_TOID_4
        • BLPU_UPRN_TopographicArea_TOID_5
        • RoadLink_TOID_Road_TOID_7
        • RoadLink_TOID_Street_USRN_8
        • BLPU_UPRN_RoadLink_TOID_9
        • Road_TOID_Street_USRN_10
        • BLPU_UPRN_Street_USRN_11
        • ORRoadLink_GUID_RoadLink_TOID_12
        • ORRoadNode_GUID_RoadLink_TOID_13
      • OS Open Linked Identifiers Known Data Issues
    • OS Open TOID
      • Release Notes
        • May 2025 – Epoch 43
        • March 2025 – Epoch 42
        • February 2025 – Epoch 41
        • January 2025 – Epoch 40
        • November 2024 – Epoch 39
        • September 2024 – Epoch 38
        • August 2024 – Epoch 37
        • July 2024 – Epoch 36
      • OS Open TOID Overview
        • Product supply
        • Coordinate reference system
      • OS Open TOID Technical Specification
        • Product Details
        • Data structure
        • Product Supply
      • OS Open TOID Known Data Issues
    • OS Open UPRN
      • Release Notes
        • May 2025
        • March 2025
        • February 2025
        • December 2024
        • November 2024
        • September 2024
      • OS Open UPRN Overview
        • Product supply
        • Coordinate reference systems
      • OS Open UPRN Technical Specification
        • Feature type
          • OS Open UPRN
      • OS Open UPRN Known Data Issues
    • OS Open USRN
      • Release Notes
        • May 2025
        • April 2025
        • March 2025
        • February 2025
        • January 2025
        • December 2024
        • November 2024
        • October 2024
        • September 2024
        • August 2024
        • July 2024
      • OS Open USRN Overview
        • Product supply
        • Coordinate reference system
      • OS Open USRN Technical Specification
        • Street Type
        • Feature type
          • OS Open USRN
        • Geometry
        • Metadata
      • OS Open USRN Known Data Issues
  • Height and imagery
    • Height and Imagery Portfolio Information
    • 🆕OS 3D Mesh (Beta Product)
      • 🆕OS 3D Mesh Overview
        • 🆕Product data
        • 🆕Feature modelling
      • 🆕OS 3D Mesh Getting Started Guide
        • 🆕Importing an OS integrated mesh model into ArcGIS Pro
          • 🆕Navigation
          • 🆕Scene lighting
          • 🆕Adding additional vector data
          • 🆕Adding 2D polygon layers
          • 🆕Adding 3D line feature layers
          • 🆕Adding point datasets
          • 🆕Adding miscellaneous 3D models
          • 🆕'Line of sight' analysis
          • 🆕Animation
        • 🆕Importing an OS integrated mesh model into ArcGIS Online
          • 🆕Adding data to AGOL
          • 🆕Creating a 3D scene
          • 🆕Adding an OS mesh
          • 🆕Spatial reference systems
          • 🆕Defining 'Layer Style' options
          • 🆕Polygon layers
          • 🆕Line layers
          • 🆕Point layers
          • 🆕Text labels
          • 🆕Custom 3D models
          • 🆕Spatial analysis and reporting
    • OS Terrain 5
      • OS Terrain 5 Overview
        • Product supply
        • Pre-requisites
        • Data structure
        • Source data
        • The National Grid
      • OS Terrain 5 Technical Specification
        • Grid data
        • Contour data
        • GML Feature types
        • Esri shapefile
        • Metadata
        • Product glossary
      • OS Terrain 5 Downloads
      • OS Terrain 5 Known Data Issues
    • OS Terrain 50
      • OS Terrain 50 Overview
        • Product supply
        • Pre-requisites
        • Data structure
        • Source data
      • OS Terrain 50 Technical Specification
        • Grid data
        • Contour data
        • GML Feature Types
        • Esri Shapefile
        • GeoPackage
        • Vector tiles
        • Metadata
        • Product glossary
      • OS Terrain 50 Downloads
      • OS Terrain 50 Known Data Issues
    • OS MasterMap Imagery Layer
      • OS MasterMap Imagery Layer Technical Specification
        • Image appearance
        • Ancillary files
      • OS MasterMap Imagery Layer Downloads
      • OS MasterMap Imagery Layer Known Data Issues
  • Getting Started
    • Getting Started with GeoPackage
      • Accessing GeoPackage data via GIS software
      • Loading GeoPackage into a database
      • Reading GeoPackage data via FME
    • Getting Started with Vector Tiles
      • Installing vector tiles in GIS software
      • Using OS styles to get started in Mapbox Studio
      • Hosting and serving your own vector tiles
      • Using OS styles on vector tiles you have created
      • Product downloads
  • Resources
    • 📅Product Refresh Dates
    • 📣Product Announcements
    • 🗺️PSGA Product Summary
    • 🔍OS MasterMap Product Viewer Tool
    • OS Product Roadmap
    • End of Life Product Notices
      • End of Life Notice – OS MasterMap Water Network Layer
    • Accessibility
    • Contact Us
    • 📃Terms and Conditions
    • 📔Open Identifiers Policy
    • Use of NSG and OS Data
Powered by GitBook
On this page
  • Free text search
  • Structured component search
  • Understanding the different addresses available
  • The search operation
  • Generating a search query from structured user input
  • Structuring the query for a structured address search
  • Supporting case-insensitive queries and partial matches
  • Generating a search query from unstructured user input
  • Creating a search index for addresses
  • Structuring the query for an unstructured address search
  • Summary: Searching for addresses

Was this helpful?

Export as PDF
  1. Addressing and Location
  2. AddressBase Premium
  3. AddressBase Premium Getting Started Guide

Searching for addresses

PreviousCreating a single-line or multi-line addressNextAddressBase Premium Technical Specification

Last updated 8 months ago

Was this helpful?

A common requirement for customers using the AddressBase products is to search for properties using full or partial addresses. Address searches may return a large number of addresses, a short list of possibilities, a single match or no results, depending on the search criteria.

There are many methods of implementing an address search, from free text queries through to structured address component searches. This section will step through two such approaches that may be used when working with AddressBase Premium products: free text search and structured component search.

These methods are not intended as recommendations; they are simply examples of how to get maximum value out of the products when implementing an address search function.

Free text search

One type of search implementation involves a single ‘search engine’ style text box, into which a user can type all or some of an address. For example:

Find address
Results

CLOVER AVENUE, SW99 9ZZ

1, Clover Avenue, Fieldtown, Addressville, SW99 9ZZ

2, Clover Avenue, Fieldtown, Addressville, SW99 9ZZ

3, Clover Avenue, Fieldtown, Addressville, SW99 9ZZ

4, Clover Avenue, Fieldtown, Addressville, SW99 9ZZ

5, Clover Avenue, Fieldtown, Addressville, SW99 9ZZ

6, Clover Avenue, Fieldtown, Addressville, SW99 9ZZ

7, Clover Avenue, Fieldtown, Addressville, SW99 9ZZ

In this scenario, the user can choose to type anything in Find address, which may be just one component of an address (for example, a postcode, street name or building name), several parts of an address (for example, street name + town name, house name + postcode, etc.) or even (rarely) a complete address.

There may or may not be commas between search items, or they may have been entered with or without capitalised letters, etc. In short, with this search method, there is no structure to the user input and the search methodology must be designed with this in mind.

Structured component search

The other common type of implementation for address searches involves entering search criteria in a structured way (for example, with a different text box for each major address component).

Results

Rose Cottage, Main Street, Fieldtown, Addressville, SW99 9ZZ

Rose Cottage, Main Street, Ashford, AS45 9PP

Rose Cottage, Main Street, Buxtew, Monley, MO88 4TY

And so on...

This method guides the user to enter known components of an address and also creates a predictable user input structure around which to build a search function. While generally simpler to use and implement, it can be less user-friendly, particularly in cases where it is not obvious which box to type an address component into; for example, is Richmond Terrace a building name or a street?

The following sub-sections suggest how to implement the two search methods described above. Both methods should be used alongside the instructions on formatting single address labels given in Section 11.

Understanding the different addresses available

The table below outlines what these addresses are and how to access them in the products. It provides a breakdown of the location and definition of Delivery Point addresses and the four categories of Geographic Addresses available in AddressBase Premium products.

Address type
What is it?
Where is it?

Delivery Point Address

The postal address as assigned to the property by Royal Mail (and widely used by the public).

Delivery Point Address table.

Approved Geographic Address

The legal / approved address as assigned by the local naming and numbering authority.

LPI table with Logical Status = 1, joined to Street Descriptor, Organisation and BLPU tables.

Provisional Geographic Address

Provisional addresses may exist for a property from the moment that an address has been granted planning permission to be built to the time when construction has been completed.

LPI table with Logical Status = 6, joined to Street Descriptor, Organisation and BLPU tables.

Alternative Geographic Address

Any alternative addresses that may exist for this property (for example, alternative names). There may be more than one alternative address per property.

LPI table with Logical Status = 3, joined to Street Descriptor, Organisation and BLPU tables.

Historical Geographic Address

Any historical addresses (recorded since data collection began) that may have existed in the past for this property (for example, previous house names or business names, and so on). There may be more than one historical address per property.

LPI table with Logical Status = 8, joined to Street Descriptor, Organisation and BLPU tables.

The search operation

An address search operation typically requires two stages of interaction from a user, and several processing steps from the underlying IT system. These steps are summarised in the following diagram:

The second user interaction can be omitted if there is only one result returned from the query. In almost all cases, there should be an option to ‘search again’ at the second and third stages in case no results are returned, or if none of the options shown is the required address.

Of course, different applications require different approaches; however, the general principles of the above process apply in all cases where an address is searched for based on user-entered criteria.

Generating a search query from structured user input

Within an interface that accepts structured user input for an address search, it is necessary to ‘map’ the fields presented to the user with those found within the AddressBase Premium products. In particular, any query will need to test multiple fields for a given input and will need to combine result sets from the two different address formats (Delivery Point Address and Geographic Address) in order to produce the most complete result set.

Generally, a search form will describe a simplified view of an address in order to keep the user interface tidy and intuitive. Users may be given a set of text boxes to fill in, generally including building name, building number, street name, locality name, town name and postcode. The relationships between some common search fields and the fields found in AddressBase Premium and AddressBase Premium Islands are as follows:

The table below shows the relationships between some common search fields and the fields found in AddressBase Premium and AddressBase Premium Islands.

Search Box
Mapped Delivery Point fields
Mapped Geographic fields

Business Name

Organisation_Name

Organisation PAO_Text SAO_Text

Flat / Subdivision Name

Sub_Building_Name Department_Name

SAO_Text

Flat / Subdivision Number

Sub_Building_Name

SAO_StartNumber SAO_StartSuffix SAO_EndNumber

SAO_EndSuffix

Building Name

Building_Name

PAO_Text

Building Number

Building_Number

Building_Name (in cases where a suffix or range is present)

PAO_StartNumber PAO_StartSuffix PAO_EndNumber

PAO_EndSuffix

Street

Thoroughfare Dependent_Thoroughfare

Street

PAO_Text

Locality

Dependent_Locality Double_Dependent_Locality

Locality

Town Street

Town

Dependent_Locality Post_Town

Town Locality

Postcode

Postcode

Postcode_Locator

The above mapping is an example only and it is possible to break down the search fields differently, in which case a different mapping would be required. The important thing is to consider all possibilities for how data might be recorded. For example, a business name can sometimes appear as an organisation name or a building/PAO name, depending on circumstances, so both must be checked when creating a search query.

Numbers need to be handled very carefully due to the presence of suffixes and ranges. There are two options for structuring the search input in these cases:

  1. A single ‘number’ box can be used (as shown in the table above), which will then require some string manipulation to split the input into the appropriate numeric range and suffix components in order to search the Geographic Addresses; or

  2. Four boxes can be provided for each number (start number, start suffix, end number and end suffix), which would then need to be combined into an appropriate string to search the Delivery Point Addresses.

Structuring the query for a structured address search

The basic rules to follow when generating a search query from structured input are as follows:

  • Ignore any search boxes that are not filled in with values.

  • Where a value is entered, assume that a match on at least one of the mapped fields is essential.

In SQL query terms, this means that each search term should generate a sub-query that searches each of the mapped fields (using OR), and that these sub-queries should then be combined together (using AND) into a single search query. The following SQL code illustrates this (for the Delivery Point Address search only) where a street, locality and town name have been entered by the user:

SELECT dp.UPRN, GetFormattedAddress(dp.*) FROM abp_delivery_point dp
WHERE (dp.thoroughfare = streetsearchtext OR dp.dependent_thoroughfare = streetsearchtext) AND (dp.dependent_locality = localitysearchtext OR dp.double_dependent_locality = localitysearchtext) AND (dp.dependent_locality = townsearchtext OR dp.post_town = townsearchtext)

On top of this, for a complete query the two different types of addresses should be queried separately (Geographic and Delivery Point Addresses), and the two result sets should be amalgamated into a single set using a UNION. The following example builds upon the previous example to include Geographic Addresses as well as Delivery Point Addresses:

SELECT dp.UPRN, GetFormattedAddress(dp.*) FROM abp_delivery_point dp
WHERE (dp.thoroughfare = streetsearchtext OR dp.dependent_thoroughfare = streetsearchtext) AND (dp.dependent_locality = localitysearchtext OR dp.double_dependent_locality = localitysearchtext) AND (dp.dependent_locality = townsearchtext OR dp.post_town = townsearchtext)
UNION
SELECT b.uprn, GetFormattedAddress(b.*, l.*, s.*, o.*) FROM abp.blpu b INNER JOIN abp.lpi l ON l.uprn
= b.uprn
INNER JOIN abp.street_descriptor s ON s.usrn = b.usrn LEFT JOIN abp.organisation o ON o.uprn = b.uprn WHERE
(s.street_name = streetsearchtext OR l.pao_text = streetsearchtext) AND
(s.locality = localitysearchtext OR s.town = localitysearchtext OR s.street_name = localitysearchtext) AND (s.town = townsearchtext OR s.locality = townsearchtext)

The geographic query requires four joins between the BLPU, LPI, Street Descriptor and Organisation tables in order to access all the fields required to build an address.

The SQL UNION operator will combine the two result sets, discarding any exact duplicates (retaining the exact duplicates requires the use of UNION ALL, but that is not desirable in this example).

The resulting output from this query will be a set of search results: formatted addresses along with their UPRN. Exact duplicates will be omitted, but all ‘variations’ of the same address will be outputted (one row for each variation, with the same UPRN repeated more than once potentially). It may be wise to also return the ‘logical status’ and/or ‘postal address flag’ values against each to enable further filtering (that is, to include or exclude historical addresses for example, or to restrict the results to postal addresses only).

Supporting case-insensitive queries and partial matches

A flaw in the above examples is the use of equality operators. In practice, because people do not tend to be consistent with the capitalisation of letters, the SQL ‘LIKE’ operator might work better. Depending on the nature of the application, a ‘%’ wildcard could be appended to the end of each search term to allow only the first few letters of an address component to be entered. For example:

SQL code
Description

dp.post_town LIKE townsearchtext

Case insensitive search in some databases

dp.post_town LIKE (townsearchtext || ‘%’)

Matches post towns that start with the search text

dp.post_town LIKE (‘%’ || townsearchtext || ‘%’)

Matches post towns that contain the search text

Alternatively, if exact matches are required but case sensitivity is not, then the UPPER() or LOWER() SQL functions can be used on each side of the equals sign in comparisons (a solution that should work in all databases):

SQL code
Description

UPPER(dp.post_town) = UPPER(townsearchtext)

Case insensitive equality

Finally, to combine all of the approaches, the following would work for maximum flexibility:

SQL code

UPPER(dp.post_town) LIKE (‘%’ || UPPER(townsearchtext) || ‘%’)

Generating a search query from unstructured user input

When offering a ‘search engine’ style search feature with just a single text box to enter search terms, a wholly different approach is required. No assumptions can be made about the order, format or style of the user input, and the data will need to be ‘indexed’ in a way that facilitates searches of this type.

Creating a search index for addresses

Search engine style searches are likely to require the creation of an additional index/lookup table for addresses. Such a table is likely to consist of just two main columns: a key value (UPRN) and a formatted address string. Additional columns may be required to allow filtering of results (such as the ‘logical status’ values, which would allow the results to be filtered on ‘approved’, ‘provisional’ and ‘historical’ statuses, for example).

The table below shows a possible address index table structure:

UPRN
Address Text
Statuses (multiple fields)

123456789012

4 THE MEADOWS HIGH STREET WALTHAMSDALE BURRIDGE BU27 9UB

Approved

123456789012

FLAT 4 THE MEADOWS HIGH STREET WALTHAMSDALE BURRIDGE BU27 9UB

Alternative + PAF

123456789012

4 HIGH STREET WALTHAMSDALE CLOSE BURRIDGE BU27 9UB

Historical

947364758903

ROSE COTTAGE MAIN STREET HAVERSHAM SUDBURY SU45 9TY

Approved + PAF

947364758903

ROSE FARMHOUSE MAIN STREET HAVERSHAM SUDBURY

Historical

Note how the addresses have been formatted as a single text string with a single space between each word (although leaving commas in would do no harm). All forms of each address (both PAF and Geographic, current and historical, approved and alternative) have been added to the index, so there can be several rows with the same UPRN. To speed up complex searching, an appropriate index could be added to the Address Text field, such as a full text search index.

Structuring the query for an unstructured address search

Once a suitable search index is in place, the query itself can be put together. The basic idea is to split the user input into search terms by removing commas, double spaces and other unnecessary whitespace, and then splitting the user input at each single space, as follows:

User input: 4, High Street, Westville, wv17 Capitalised, with commas and double-spaces removed: 4 HIGH STREET WESTVILLE WV17

Split into separate search terms:

  • 4

  • HIGH

  • STREET

  • WESTVILLE

  • WV17

Once the user input has been pre-processed into separate search terms, a query can be generated. The key assumption in this example will be that ALL search terms must be matched against the index table to be considered as a result. This implies a query where each value is matched using an ‘AND’ operator. In order to search the whole index, the ‘LIKE’ operator will need to be used along with a ‘%’ wildcard on either side of the search text. A suitable search query for the above example would be as follows:

SELECT UPRN, AddressText FROM AddressSearchIndex 
WHERE
AddressText LIKE ‘%4%’ AND 
AddressText LIKE ‘%HIGH%’ AND 
AddressText LIKE ‘%STREET%’ AND 
AddressText LIKE ‘%WESTVILLE%’ AND
AddressText LIKE ‘%WV17%’;

This query would return all rows from the index table that contain all of the search terms, along with the appropriate UPRNs.

The table below shows how the index table would be used in the above example to return relevant results:

UPRN
Address Text
Statuses (multiple fields)

894756389092

4 HIGH STREET WESTVILLE SUNNYTOWN WV17 7HL

Approved + PAF

894756389092

ROSE COTTAGE 4 HIGH STREET WESTVILLE SUNNYTOWN WV17 7HL

Alternative

894756389092

ROSE COTTAGE HIGH STREET WESTVILLE SUNNYTOWN WV17 7HL

Alternative

274859037849

FLAT 4 HIGHBURY COURT HIGH STREET WESTVILLE SUNNYTOWN WV17 7HL

Approved + PAF

482974769830

MAPS4U LTD HIGH STREET WESTVILLE SUNNYTOWN WV17 7HL

Approved

This result set can then be presented to the user, who can select the most appropriate record, which can then be retrieved in full using the UPRN.

Of course, in a practical implementation, the above query would need to be dynamically generated, with a separate condition added for each search term. This example is quite a strict search query that requires all search terms to be present. Many layers of complexity could be added to allow partial and ‘fuzzy’ matches, and to return confidence scores for example, but such enhancements are beyond the scope of this section.

Summary: Searching for addresses

This section introduces implementing address search functionality using AddressBase Premium products. The main points are summarised below:

  • A user front-end for an address search may contain a single, search engine style text box or multiple text boxes representing different parts of an address.

  • A typical address search function takes place in three stages:

    • A user enters search text.

    • A query is run, returning a set of possible matches.

    • The user selects the address of interest, and the full record is then returned.

  • With a structured search interface, the addresses can be queried directly by mapping the various address fields to the text boxes supplied.

  • For an unstructured (single text box) interface, it is necessary to create an index table with fully formatted address strings against each UPRN. Queries can then be run against this index table by splitting the user input into individual search terms and requiring them all to be present.

  • It is possible to filter results by status, for example, ‘approved’, ‘alternative’ and ‘historical’, as well as ‘postal’ or ‘non- postal’, etc.

  • Any search function should search all forms of an address (both Geographic and Delivery Point Addresses).

  • Careful consideration should be given to the use of ‘fuzzy’ search algorithms (such as using wildcard or sound-alike searches).

As described in above, at a high level, the AddressBase Premium products provide two different types of address: the Delivery Point Address and the Geographic Address. However, for some Geographic Addresses, an alternative, provisional or historical variant of the approved record may also be provided as well as the approved address (all sharing the same UPRN).

In the above example, ‘streetsearchtext’, ‘localitysearchtext’, and ‘townsearchtext’ (shown in blue) represent user-entered search terms (which could be parameters within an SQL function) and the GetFormattedAddress(*) function is a hypothetical user-defined function that returns the formatted address as a single string (suitable for display in the user interface). For more information on formatting addresses, please see .

Creating a single-line or multi-line address
Creating a single-line or multi-line address
An example of a structured address component search.
Diagram Summarising the steps needed to successfully implement an address search operation.
An example of a structured address component search.
Diagram Summarising the steps needed to successfully implement an address search operation.