P-codes and gazetteers


Version Française disponible en bas de page



P-codes (Place codes) are unique geographic identification codes, usually represented by combinations of letters and numbers to identify a specific place, point, positional location or feature on a map or within a database. There must only be only one P-code per administrative unit.

P-codes should be made available and used consistently within Core CODs (COD-AB, COD-PS, and COD-HP). At a minimum, the taxonomy (names and P-codes) should be made available as a gazetteer (a geographic dictionary that contains administrative names and P-codes).

P-codes should then be used as the taxonomic framework for assessments, responses, and associated information as much as possible.

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., assigning P-codes to school locations). P-codes are used for analysis such as a prioritization matrix or a vulnerability matrix. P-codes are also used to visualize humanitarian data in maps and charts as seen in HDX, Snapshots, Bulletins, HNOs, etc). 

How P-codes are used in humanitarian preparedness and response 

  • The unique ID can be used to different places with the same name 

  • P-code and names are used in data collection tools (e.g., 3W, RPM) 

  • Used to amalgamate data from different sources 

  • Used as a dimension for analysis (e.g., geographic severity, priority etc.) 

  • Can be applied to other datasets so that their geographic location is known if it is a spatial file 

P-coding 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.  This 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 and reduces the risk of database key incompatibility. The country code is also useful if CODs are ever merged into one database as it will ensure P-code uniqueness.

  • Administrative level 1 to Administrative level x - Each administrative level receives a numeric code with enough leading zeros to ensure that the occasional addition of new administrative units will not exceed the number of codes available.  In the example below, two digits are adequate for administrative levels 1 - 3 (meaning that there are not expected to be more than 99 administration units in any one of these levels).  Level 4 can have as many as 999 administrative units.

  • Incremental Settlement Numbers (if required) - For simplicity of maintenance, it is best to use a single set of incremental numbers across the whole country (rather than within each administrative 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-structure" 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 are:

  • 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 administrative units must be coordinated across the humanitarian community so that all actors switch to new versions of the admin units at the same time. 

CASE STUDY:  Malawi COD-AB and COD-PS alternative P-code structures

CASE STUDY:  Malawi COD-AB and COD-PS alternative P-code structures

In 2018 it was understood that some Malawian information sources described a 32 unit administrative level 2 (district) structure while others described 28 units, the differences being four cities which might or might not be administratively distinct from their surrounding administrative districts.  (Administrative level 3 units respected each version of the administrative level 2 boundaries.)  The humanitarian community had not achieved consensus on which system to use and the government inquiries could not confirm which system that would be used in the 2018 census.

OCHA decided to base the COD-AB and COD-PS on the 32 unit system until or unless the 2018 census reports, expected in one or two years, prompted a change.  However, a table in the gazetteer mapped the '28 district' alternative names for each administrative level 3 unit so that users could derive the 28 district structure if required.


  • P-codes must be unique within a country (no duplication of P-codes).

  • There can only be only one P-code per administrative unit.

  • P-codes in the COD-AB and COD-PS should match - and then be used by the COD-HP.

  • At a minimum, the taxonomy (names and P-codes) should be made available as a gazetteer even if the administrative boundary geometry is unavailable.

  • 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. 

  • P-codes should form the framework for or be referenced by Country Specific COD-CS datasets.  The 

  • P-code systems can be extended or enhanced by similar CODs such as health districts CODs.


  • 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.




Les P-codes sont des codes d’identification géographiques (géo) uniques. Ils se composent d’une combinaison de lettres et/ ou de nombres qui servent à identifier et à désigner un lieu spécifique, un élément sur une carte ou dans une base de données.  Les geo-codes sont entrés dans le langage courant comme P-code « abréviation de Place-code », ils signalent un endroit spécifique, un point ou encore une position particulière. Dans l’expression « P-codes », le « P » correspond à l’abréviation des mots « Place » et/ou « Position », ces termes sont interchangeables. Il ne peut y avoir qu’un seul P-code par unité administrative. Ils sont également utilisés comme des codes uniques de référence qui peuvent renvoyer à des zones peuplées (settlements) ou, dans certains ensembles de données, à des unités administratives.

Les P-codes doivent être mis à disposition comme une activité préparatoire lors du développement des CODs de base/centraux (COD-AB et COD-PS). Au minimum, la taxomonie (noms et P-codes) devrait être mis à disposition sous forme d’un répertoire d’index géographique (un dictionnaire d’index géographique qui contient les noms administratifs et les P-codes).

Les P-codes sont requis et utilisés au tout début d’une situation d’urgence et tout au long de la réponse humanitaire. Les P-codes aident à la coordination des données et fournissent un cadre pour la plupart des activités de collecte, de traitement, d’analyse et de visualisation des données.

Par exemple, les P-codes/noms sont utilisés pour créer les cadres de collecte de données des 3W et de données de suivi. Ils sont utilisés pour faciliter le traitement des données, par exemple, lors du traitement des CODs spécifiques au pays/nationaux (par exemple : l’attribution de P-codes aux établissements scolaires).Les P-codes sont utilisés pour les analyses, par exemple, avec les matrices de priorisation ou avec les matrices de vulnérabilité. Les P-codes sont également utilisés pour visualiser les données humanitaires sur des cartes ou des graphiques (comme sur HDX, Snapshot, Bulletins, HNOs, etc).

Comment utiliser les P-codes dans la préparation et l'intervention humanitaire :

  • L'ID unique peut être utilisé pour différents lieux avec le même nom.

  • Le P-code et les noms sont utilisés pour et dans les outils de collecte de données (p. ex: 3W, RPM)

  • Permettent de fusionner des données provenant de plusieurs sources.

  • Utilisé comme dimension pour les analyses (p. ex: gravité géographique, priorités, etc...)

  • Peut être appliqué à d'autres ensembles de données afin que leur emplacement géographique soit connu (s'il s'agit d'un fichier spatial)

Processus de P-codage

Les deux premières et plus importantes étapes sont : 
1. S’assurer et confirmer qu’il n’existe pas de système de codage national disponible ;
2. S’assurer qu’il n’existe pas déjà un système de codage informel déjà adopté par d’autres organisations nationales ou internationales. La création d’un système de P-codes ne doit avoir lieu que lorsqu’aucun autre système n’est disponible.

Le schéma ci-dessous illustre une structure de base du système de P-codes, pour un pays avec 4 niveaux de frontières administratives.

Les composants de ce système sont :

  • Le code pays – Ce code provient de du code standard « ISO 2-letter country». Ce qui oblige n’importe quel P-code à être reconnu comme un texte plutôt qu’un nombre. L’avantage de ce système est double : il permet de s’assurer que les zéros de tête ne sont pas supprimés et il permet également de réduire les risques d’incompatibilité des bases de données. Le code pays est également utile en cas de fusion des CODs dans une base de données unique car il garantit l’unicité du P-code.

  • Du niveau administratif 1 au niveau administratif x – Chaque niveau administratif reçoit un code numérique comportant assez de zéros de tête pour que l’ajout occasionnel de nouvelles unités administratives ne dépasse pas le nombre de codes disponibles. Dans l’exemple ci-dessous, deux chiffres suffisent pour les niveaux administratifs 1 à 3 (ce qui signifie qu’il ne devrait pas y avoir plus de 99 unités administratives dans un de ces niveaux). Le niveau 4 peut compter jusqu’à 999 unités administratives.

  • Numéros de lieux de peuplement incrémentiels (si nécessaire) – Par souci de simplicité, il est préférable d’utiliser un seul ensemble de numéros incrémentiels dans l’ensemble du pays (plutôt que dans chaque unité administrative). Ce qui présente l’avantage supplémentaire :  permettre de se référer à des lieux en utilisant uniquement le numéro de lieu de peuplement, sans les codes d’unité administrative, ce qui les rends plus courts. Suffisamment de chiffres doivent être utilisés pour permettre l’ajout éventuel de nouveaux ensembles de données.

À partir de combien de structure est-ce trop de structures ?

On est souvent tenté de « sur-structurer » le système de P-codes, par exemple, en ayant une série contiguë de codes de niveau « Admin 2 » appartenant à une certaine frontière administrative de niveau 1. Toutefois, en particulier aux niveaux inférieurs, ce type de contraintes est difficile à maintenir dans la durée et il n’ajoute que peu de valeur ajoutée au système des P-codes.

Mise à jour des ensembles de données

Puisque ces ensembles de données sont un élément clé de l’infrastructure de l’information, il est important que les modifications soient effectuées avec soin, et ce, afin d’éviter de rompre les systèmes d’information qui reposent sur les ensembles de données. Quelques règles essentielles sur les changements :

  • Un P-code donné peut être supprimé (si un « lieu de peuplement » ou une unité administrative est supprimé(e)), mais attention, il ne peut jamais être réutilisé pour représenter un lieu différent.

  • Des ajouts à la couche de données de peuplement peuvent être effectués à tout moment. Toutefois, les partenaires doivent être avisés lorsque cela est fait.

  • Les suppressions de dans la couche de données des lieux de peuplement ou tout changement dans les unités administratives doivent être coordonnés au sein de la communauté humanitaire, afin que tous les acteurs passent aux nouvelles versions des unités administratives en même temps.

Etude de cas :  Malawi COD-AB et COD-PS structures alternatives (P-code)

Etude de cas :  Malawi COD-AB et COD-PS structures alternatives (P-code)

En 2018, certaines sources d'information Malawiennes décrivaient une structure administrative de 32 unités au niveau 2 (district), tandis que d'autres décrivaient une structure administrative de 28 unités au niveau 2 (district). Les différences concernaient quatre villes qui pouvaient ou non être distinctes sur le plan administratif des districts administratifs voisins. (Les unités administratives de niveau 3 respectaient chaque version des limites administratives de niveau 2.) La communauté humanitaire n’est pas parvenue à un consensus concernant le système à utiliser et les enquêtes gouvernementales n’ont pas pu confirmer quel système serait utilisé pour le recensement de 2018.

OCHA a décidé de baser les COD-AB et les COD-PS sur le système de 32 unités jusqu’à ce que les rapports de recensement 2018 (attendus dans un an ou deux) entrainent un changement. Cependant, un tableau dans le répertoire toponymique a été créé pour cartographier les noms alternatifs des « 28 districts » pour chaque unité administrative de niveau 3, et ce, afin que les utilisateurs puissent, si nécessaire, obtenir la structure des « 28 districts ».

Les normes

  • Les P-codes doivent être uniques au sein d’un pays (pas de duplication de P-codes)

  • Il ne peut y avoir qu’un seul P-code par unité administrative.

  • Les P-codes dans les COD-AB et COD-PS doivent correspondre.

  • Au minimum, la taxonomie (noms et P-codes) devrait être mise à disposition sous forme de répertoire géographique, même si la géométrie des limites administratives n’est pas disponible.

  • Idéalement, un P-code est une combinaison de lettres et/ou de nombres (voir l’image ci-dessus) mais, les systèmes nationaux doivent être adoptés. Si aucun code alpha (il s’agit généralement d’un code « ISO 2-letter country») n’est utilisé nationalement, il sera peut-être nécessaire d’en ajouter un pour garantir son caractère unique à l’échelle globale.

  • Les P-codes doivent être inclus dans les COD-AB et les COD-PS. Il est préférable d’inclure les P-codes aux autres ensembles de données CODs (par exemple : utiliser Spatial join/Union avec COD-AB).