Overview
P-codes are unique geographic (geo) identification codes, represented by combinations of letters and/or numbers to identify a specific location or feature on a map or within a database. For a specific place, point, or positional locations, the geo-codes have come into common usages as P-codes (abbreviated for Place-Code). These terms can be essentially interchanged as long as one recognizes the focus on “position or place” for P-codes. There can only be only one p-code per administrative unit. They are also used to provide unique reference codes to refer to settlements or administrative units in other datasets.
P-codes should be made available as a preparedness activity during the development of the Core CODs (COD-AB and COD-PS). At a minimum, the taxonomy (names and p-codes) should be made available.
P-codes will be required and used at the very start of an emergency and throughout the response. P-codes help with data coordination and provide the framework for most data collection, processing, analysis, and visualization. For instance, P-codes/names are used to create the 3W and monitoring data collection frameworks. They are used to help process data such as when processing country-specific CODs (e.g. putting P-codes in school locations). P-codes are used for analysis such as prioritization matrix or vulnerability matrix. P-codes are also used to visualize humanitarian data in maps and charts as seen in HDX, Snapshots, Bulletins, HNO, etc).
Process
The first and most important two steps are: 1) confirm that there is no national coding scheme already available; 2) confirm that there is no informal coding scheme that has been adopted by some national or international organizations. Only proceed to create a P-code system if no other system is available.
The schematic below shows a basic structure of a P-code system for a country with four administrative boundary levels.
The components of this system are:
Country Code - This is taken from the ISO 2-letter country code standard. For most purposes, this code does not need to be included when giving the P-code for a place. However, a good reason for including it is that it will force any P-code to be recognized as text rather than a number, which has the advantage of being sure that leading zeroes are not dropped reduces the risk of database key incompatibility.
Admin 1 to Admin x - Each admin level gets a numeric code with enough leading zeros to ensure that the occasional addition of new admin units will not exceed the number of digits available. In the example below, two digits are adequate for admin levels 1 - 3 (meaning that there will not be more than 99 admin units in any one of these levels). Level 4 can have as many as 999 admin units.
Incremental Settlement Numbers - For simplicity of maintenance, it is best to use a single set of incremental numbers across the whole country (rather than within each admin unit). This has the additional advantage of allowing places to be referred to using only the settlement number without the admin unit codes, making them shorter. Enough digits should be used here to allow for the possibility of new datasets to be added.
How much structure is too much?
There is a temptation to "over-structured" the P-code system, for example, having a contiguous range of Admin level 2 codes falling within a given Admin Level 1 boundary. However, these sort of restriction, especially at the lower levels, are difficult to maintain over time and add little value to the P-code system.
Updating the datasets
Because these datasets are a key piece of information infrastructure, it is important that changes are managed carefully to avoid breaking information systems that rely on the datasets. Some basic rules about changes:
A given P-code can be removed (if a settlement or admin unit is removed), but never re-used to represent a different place
Additions to the settlements layer can be made at any time. However, partners should be notified when this is done.
Deletions in the settlements layer or any change to the admin units must be coordinated across the humanitarian community so that all actors switch to new versions of the admin units at the same time.
Standards
- P-codes are unique within a country (no duplication of p-codes)
- There can only be only one p-code per administrative unit. (There
- Pcodes in the COD-AB and COD-PS should on a 1:1
- At a minimum, the taxonomy (names and p-codes) should be made available
- Ideally, a P-code is a combination of letters and/or numbers (see image above) but national systems should be adopted. If no alpha code (usually it is ISO 2 letter code) is used nationally, it may need to be added to ensure its uniqueness globally.
Resources
- P-code Guidance Process to develop P-codes produced by OCHA, UNHCR, and the International Center for Remote Sensing Education.
- P-code flyer (for advocacy purposes)
P-Coder tools: these tools will analyze an excel spreadsheet and verify names/p-codes. Used when processing partner 3W or monitoring data. These can be modified to fit other country needs.
P-Coder Tool - Nepal (need to get)
P-Coder Tool - Philippines (need to get)
- P-Coder tool - Generic (2016)
Tutorial