...
P-codes are used consistently within COD-AB, COD-EM, COD-PS, and some COD-CS datasets. 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).Gazetteers, or tables of P-codes and associated feature names are therefore provided as spreadsheet resources in these COD datasets. (The spreadsheet file name may be similar to “ken_adminboundaries_tabulardata.xlsx” or “ken_admgz.xlsx”.)
P-codes should then be used as the taxonomic framework for assessments, responses, and associated information as much as possible.
Typical applications of P-codes:
Linkages between a COD-AB (or COD-EM) and its associated COD-PS
Linkages between a COD-AB (or COD-EM), or COD-PS and another, non-COD dataset
Linkages between two or more non-COD datasets
As a framework for a new non-COD dataset - for example, a new assessment.
Existing P-codes systems can be extended to code non-administrative features as they lie within a P-coded administrative feature.
For example, spontaneous settlements established after the 2010 Port-au-Prince earthquake were P-coded within existing section communale (administrative level 3) P-coded features. The following fictional example establishes “ADM_SS_PCODE” P-codes for spontaneous settlements (named in field “SS_FR”) established in the real section communale features.
ADM3_FR | ADM3_PCODE | SS_FR | ADM_SS_PCODE |
---|---|---|---|
1re Section Montagne Noire | HT0114-01 | Aurélie | HT0114-0101 |
1re Section Montagne Noire | HT0114-01 | Gabrielle | HT0114-0102 |
1re Section Montagne Noire | HT0114-01 | Manon | HT0114-0103 |
2e Section Aux Cadets | HT0114-02 | Renée | HT0114-0201 |
2e Section Aux Cadets | HT0114-02 | Sophie | HT0114-0202 |
5e Section Bellevue Chardonnière | HT0114-05 | Valérie | HT0114-0501 |
5e Section Bellevue Chardonnière | HT0114-05 | Véronique | HT0114-0502 |
5e Section Bellevue Chardonnière | HT0114-05 | Zoé | HT0114-0503 |
P-codes are 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 (COD-CS) datasets (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.).
...
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
...
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:
...
principles and standards
...
P-codes are established by Country or Regional Offices, with the support of FIS, in consultation with the relevant Information Management Working Group.
Any existing P-coding system is used or incorporated. (If there is an existing numeric system, for instance, it contribute to the numeric component of a new alphanumeric P-coding system.)
P-codes begin with an alphabetic country code, generally derived from the ISO 3166 country codes - usually the two-character code but occasionally the three-character code. Thus the administrative level 0 (country or territory) code is the alphabetical country code alone. This forces 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, and prevents mathematical modification. The country code is also useful if CODs are ever merged into one database as it will ensure P-code uniqueness.
P-codes are unique within their country and world-wide.
Additional administrative levels usually add numerical components. The number of digits assigned to each administrative level may vary by country but is consistent within each country. Examples of real administrative level 0 to 2 P-codes from different countries:
Country or territory | Administrative level 0 (ADM0) P-code example | Administrative level 1 (ADM1) P-code example | Administrative level 2 (ADM2) P-code example | Administrative level 3 (ADM3) P-code example | Remarks |
---|---|---|---|---|---|
Indonesia | ID | ID94 | ID9433 | ID9433050 | |
Haiti | HT | HT08 | HT0811 | HT 0811-07 | dash is unusual but permitted |
Burundi | BDI | BDI014 | BDI014006 | ADM3 unavailable | three-character ADM0 code is unusual but permitted |
Lebanon | LB | LB6 | LB63 | 62179 | ADM3 P-code contravenes established principles on Country Office insistence |
Azerbaijan | AZ | AZ91100002 | ADM2 unavailable | ADM3 unavailable | ADM2 P-code echoes pre-existing ex-Soviet formulation |
Ukraine | UA | UA46 | UA46115 | UA4611500000 | Three digits are assigned to ADM2 even though the greatest number of ADM2 features in any ADM1 feature is only 50. |
Country | Administrative level 1 (ADM1) P-code example | Administrative level 2 (ADM2) P-code example | Administrative level 3 (ADM3) P-code example | ||
---|---|---|---|---|---|
ID | |||||
HT | HT08 | HT0811 | HT0811-07 | ||
Country | Administrative level 2 (ADM2) P-code example | ||
---|---|---|---|
Indonesia | ID | ID94 | |
P-code systems echo the administrative hierarchy such that codes at each administrative level incorporate the all higher administrative level codes, with the lower level codes appended to higher codes. The number of
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.
...