Introducing — Historical Territorial Outline Zoning Plan (OZP) Database (Beta)

An open-access, cleaned, analysis-ready land use zoning database website for Hong Kong

Kenneth Wong
7 min readJul 2, 2022
Visit to have a first-hand experience of the website!

I am proud to announce that one of my projects — Historical Territorial Outline Zoning Plan (OZP) Database — is now in beta release. The website is publicly available via the following link:

This database website stores the publicly available digital OZP data from Town Planning Board (TPB). Statutory plans in force on and after mid-2019 could be found on this website. The database and website will automatically update when a new plan is gazetted.

Meanwhile, cleaned and merged territorial datasets of OZP data are also provided. These datasets are ready for mapping and analysis. From basic mapping to building sophisticated models, these territorial datasets could save time in preparing data.

The website aims to provide land use zoning data in Hong Kong for any citizens using or may use land use zoning data. Following are some possible use cases on how this database could ease your pain:

  • Finding notes and explanatory statements (ES) of a gazetted plan for literature review
  • Looking into the change of the zonings of a study area for preparing consultancy report
  • Investigating the history and evolution of gazetted plans for understanding the history of a district
  • Mapping the land use zonings and building height restrictions of the whole Hong Kong
  • Analysing the changes in land use zonings throughout a specific time window

The website is made possible with a data pipeline backed by R and Amazon Web Services (AWS).


Browse and download historical (& latest) OZPs

What do the plans and notes look like 2 years ago? The database act as your time machine.

You could find the plan currently in force (i.e. latest plan), as well as older versions of the plans which are in force on and after mid-2019 (i.e. historical plans).

For example, in the S_H5 folder (H5 refers to the Wan Chai scheme area), you could find plans S/H5/28, S/H5/29 and S/H5/30 (as of the end of Jun 2022). After clicking into the folders, users could find the spatial data, notes and explanatory statement of each version of that scheme area.

Various plan versions of a scheme area

Currently, spatial data including the zonings and non-spatial data including the notes and explanatory statement are available for each plan. This is the same as the zip file of each plan provided by Town Planning Board.

Spatial Data

  • Land use zoning (ZONE)
  • Building Height Restriction (BHC)
  • Planning Scheme Area (PLAN_SCHEME_AREA)

Non-spatial Data

  • Notes and Explanatory Statement (ES)
Sample view of spatial data and notes in each plan

To get the historical zoning of each plan:

  1. Go to the by-plan folder
  2. Click on the planning scheme area folder you are looking for (S_H5 in the demonstration gif)
  3. Click on the plan version folder (plan number 30 in the demonstration gif)
  4. Browse the folder to find relevant spatial data / non-spatial data you are looking for
  5. Click on the files to download
Getting the historical zoning data of a scheme area

Download territorial, analysis-ready zoning data

Get an all-in-one spatial data across the whole territory, no need to remember how Merge works

A territorial zoning dataset, including ALL planning scheme areas, is readily available for download. A new set of territorial data is provided every time a new plan is gazetted. If you need to conduct territorial analysis, you could now save a huge amount of time spent on downloading the planning data one by one from the official Digital Planning Data Website. Remember, there are around 150 planning scheme areas nowadays!

In addition, data of plans are merged into a single file. The ZONE (land use zoning) data are now not scattered across a bunch of spatial data files with the same file name. For people who cannot stand files piling up in your folder, this merged dataset would be your lifesaver.

The data are readily available for analysis in ArcGIS Pro, QGIS and other common GIS software you are using.

Territorial land use zoning data

Territorial planning scheme area data are also available. All scheme areas are joined to one single file for instance mapping.

Territorial planning scheme area data

To get the territorial zoning data:

  1. Go to the territorial-merged folder
  2. Select the date you are interested in (year first, then exact date)
  3. Choose the spatial data format you would like to choose (explained in the latter part)
  4. Choose the zoning data you would like to download (BHC / PLAN_SCHEME_AREA / ZONE_MASTER)
  5. Click on the file. The file will be immediately downloaded to your computer
Getting the territorial land use zoning data on a specific date

Additional, cleaned attributes for zoning data

Why run spatial join when you already have the required attributes?

Quite often analysts (aka me) are bored to conduct repetitive tasks. These include splitting out the numbers in the zoning for unifying the symbology. For example, R(A), R(A)1 and R(A)3 should all be coloured in the brownish-red colour of R(A) zoning. Yet, by default GIS, will consider them as separate zonings.

To handle these potential cumbersome tasks, the ZONE_MASTER territorial dataset is also cleaned with additional attributes added from the original ZONE data from TPB. A new column ZONE_MAS is added for analysis, with the numbers mentioned above stripped off to a new column ZONE_MAS_N. Meanwhile, attributes of the planning scheme area to the zone belong are already joined to the table.

Let’s take the following section of the attribute table of territorial zoning data for Jun 2022 as an example. On the left, you could see zoning designated with numbers split into their respective “general zoning” and “zoning number”. CA(1) is split into CA and 1, while R(E)1 is split into R(E) and 1. On the right, you could see attributes from the plan (name of scheme area, publication date, approval date, etc.) are also added.

Various spatial data formats

Converting spatial data from one format to another is hard. The database does that for you.

The capacity of shapefile is limited, including the notorious 10-character-limit of column names, multi-file format and no NULL values.

#mappymeme from @pokateo_

Still, shapefile is somehow already equal to spatial data, and it seems to be the most common way to share spatial data. People will stand in front of the GML file and have no idea how to open it in ArcGIS or QGIS. And seems the easiest way to solve the problem is just to provide as many data formats as possible, hoping the user can find the format they need.

So, the database provides various data formats, including the modern GeoPackage data format. Right now, the following data formats are available, thanks to the glorious GDAL:

  • Shapefile (SHP)
  • GeoJSON
  • Geographic Markup Language (GML)
  • GeoPackage (GPKG)
Spatial data format available

Let me know if there’s any data format you commonly use, yet not listed above!

Next Step(s)

Databases are the cornerstone of building applications (Are you sure you can build a map application without spatial data?). And this, of course, means this OZP database is only the first step of this project. I already have tons of ideas in my mind about what web map applications I could build, what analysis I could conduct, and even what charts and maps I could craft. Stay tuned for the updates!

And does that mean I am trying to replace what PlanD and TPB currently doing? An absolute no. Statutory Planning Portal is a marvellous, all-in-one data viewer for general use. I built this website mainly for easing my pain of tidying OZP data.

Again, if you are someone who uses OZP data, feel free to have a look at the database. I hope to hear your comments and suggestions. To be honest, I would even beg you to give it a try!




Kenneth Wong

Urban Data Science Enthusiast | Urban Planning | GIS | Maps | Data Visualisation |