(Translated by https://www.hiragana.jp/)
HASC Codes

Hierarchical Administrative Subdivision Codes

Buy data    Donate

As one feature of "Administrative Subdivisions of Countries", I have defined a hierarchical set of subdivision codes, called HASC codes. Be aware that these are not an official standard, sanctioned by any international body. They are intended for internal use within a database or other computer system and not for display.

Why did I feel the need to develop HASC codes, rather than using the existing FIPS or ISO standard? I found those standards deficient in several ways:

  • Most seriously, FIPS and ISO codes lag at least two years behind the real world, and usually more. This seems to be because of bureaucratic mass.
  • FIPS and ISO codes stop at the primary subdivision level; I wanted to have the ability to encode secondary and lower subdivisions.
  • FIPS codes are not mnemonic.
  • ISO codes are not in a uniform format. They have variable length. They are mnemonic for some countries, but not for others.
  • ISO codes are not always unique. For example, Guadeloupe can be represented as either GP or FR-GP.
  • ISO codes represent the name of a division, not its territory. When a division changes its name, the ISO code may also change. For example, when the name of Newfoundland was changed to Newfoundland and Labrador, its ISO code changed from CA-NF to CA-NL (a year later).
  • For some countries, the ISO 3166-2 divisions occupy different levels in a hierarchy, and it can be hard to understand which set of divisions to use. For example, the 2010-01-27 edition shows Spain divided into 17 autonomous communities, 50 provinces, and 2 autonomous cities in North Africa. Each of the provinces is part of an autonomous community, as shown by a column of cross-reference codes. If you want to avoid overlap, you can use either the communities and the cities or the provinces and the cities. I think the standard does a poor job of clarifying this choice, or of differentiating it from cases where a country is divided into units of various types that don't overlap.

HASC codes (past, present, and future) observe the following rules:

  • Each country has a unique two-letter code, which is the same as its ISO 3166-1 code. Each primary subdivision of a country has a two-letter code that is unique within its country. Each secondary subdivision of a country has a code that is unique within its primary division. Therefore, by concatenating the codes, you can create a unique code for each subdivision listed. For example, US.NY.DU represents Dutchess county (DU), in New York state (NY), in the United States (US).
  • I used existing official codes wherever possible. "Official" can mean various things, but I favored ISO 3166-2 codes.
  • The codes are mnemonic. They consist of the first letter in the subdivision name, followed by a letter that occurs later in that name, unless it was impossible to assign unique codes by that rule.
  • I intend to provide updates to these two-letter codes whenever geographical changes occur. I will create a new code in each case where a subdivision's territorial extent changes, except for minor boundary adjustments. I will avoid reusing obsolete codes for as long as possible.
  • Primary divisions are exclusive and exhaustive within their country; secondary divisions are exclusive and exhaustive within their primary division, and so on. "Exclusive" means that no two divisions overlap; they have only boundary points in common, with an area of zero. "Exhaustive" means that the set of subdivisions completely covers the area being subdivided. All of the counties of Delaware, taken together, account for the entire territory of Delaware. If there are cases where the official subdivisions don't meet these requirements, I will modify them as needed. For example, Christiansų, in Denmark, is technically not part of any subdivision of Denmark, but belongs directly to the nation. I have artificially called it part of the same division as nearby Bornholm.

The paper "Hierarchichal Administrative Subdivision Codes was presented at the 10th International Conference on Information Systems for Crisis Response and Management (ISCRAM). It includes material from this page.

Back to main statoids page Last update: 2013-08-18
Copyright © 2005, 2011, 2013 by Gwillim Law.