In an ideal world, the ITU prefix would fully specify the location of a callsign. However, we do not live in an ideal world.

Many prefixes are unique to a particular entity: DL4, J3, VK5 to name a few. However, many are not: 3D2, CE0, FO0, JD1, VP8, the list goes on. One can pick a standard default, i.e. 3D2 is more likely to be Fiji than Rotuma or Conway Reef. However, when a 3D2 call is used from one of those two entities, it must be added to the exception list.

Prefixes change over time. Lesotho, 7P used to be ZS8. Palmyra, KH5 used to be KP6. In the first case, ZS8 was reclaimed by South Africa and now is used only from Marion Island. In the second case, no KP6 calls have been issued since the switch, but they could be. Sometimes a prefix is used past its expiration date. Take KX6 for example. Stations in the Marshall Islands began using the new V7 prefix in September, 1978. However, a number of KX6 stations remained on the air into the late 1980s. During the 1980s, the FCC began issuing 2x1 KX6 callsigns to stations in the 6th call area. Sure, a 2x2 callsign is most likely Marshall Islands, but coding up each special case in software makes it harder to make changes down the line.

Sometimes the prefix doesn't tell you everything about the entity. For example, many 4K1 callsigns were used from Antarctica, KC4 in CQ Zone 39. But some were used from zones *other than* zone 39, and some were used from other Antarctic island like South Shetlands, VP8/H.

The following is a list of the conditions when a callsign exception is needed:

  1. The prefix is ambiguous - here is a list of some common ones:

    3D2, 3Y, 4U, CE0, CE9, FO, GB, HK0, JD1, KC6, PY0, SV0, TO, TX, VK0, VP8, ZK1

    Sometimes this affects only the CQ zone and not the entity. For example there are a number of different prefixes used in Antarctica, KC4. Some prefixes are only used from a particular CQ zone, for example FT5Y and ZL5 are both in CQ zone 30. However, some prefixes like VK0 or VP8 can be used from any of the following CQ zones: 12, 13, 29, 30, 32, 28 or 29.
     
  2. The callsign is used from more than one location. For example, VK9ZR has been used from both Willis Island and Mellish Reef.
     
  3. The callsign isn't correct for the entity. For example, there are a number of folks who moved to the states (lower-48 USA) but kept their KH6 or KL7 callsigns.
     
  4. The callsign uses a portable designator that may not be a valid prefix. For example, a number of Israeli's signed /SK in 1998 - SK is typically a prefix for Sweden! Sometimes the portable designator changes the entity, for example RZ3BY/0 is in Asiatic Russia, UA9 not European Russia, UA. Or the portable designator can change the CQ Zone, for example VE3EXY/2 operated from CQ Zone 2.
     
  5. The callsign uses an old prefix, even after a new prefix has been issued. Many of the old Russian calls had this problem, like 4K2 stations operating from Franz Josef Land in 1994.
     
  6. The callsign uses a portable designator that is the same length as the callsign. Normally the shorter part contains the DXCC entity prefix, for example SV9/HA0HW/P. However, what if there is no shorter part? Take this callsign: N6YA/VP2A. You can look at it and probably determine that it's Antigua, V2. But what about this callsign: VP2A/N6YA. It's also probably Antigua, but how can the computer tell that these two callsigns are both for the same entity? Software has to consistently pick first or second, leaving the rest to be taken care of by callsign exceptions. A number of visitors to Chinese club stations have this problem, i.e. OH2BH/BY1PK or W8JAY/BY4AA.

Sometimes a tweak to the prefix mappings can compensate for a special callsign. However, this must be weighed against how that prefix may be used in the future. For example, even though "NLD" would be a prefix for USA (if that was even used), it's more typically used by Kuwait during their annual "National Liberation Day" celebration. Therefore, adding the single prefix mapping for NLD to 9K can save a number of callsign exception mappings. However, "SK" is commonly used in Sweden, so adding "SK" as a prefix mapping for Israel in 1998 would not have been such a good idea.

Ideally, the list of callsign exceptions should stabilize over time. Eventually, but maybe not in my lifetime, all the old exceptions will be understood, and only new ones for current/future operations will be added. However, the people who have worked these problematic callsigns may not use DX4WIN, so collecting the information becomes more difficult over time.