Hacker News new | past | comments | ask | show | jobs | submit
Like I said, there are lots of weird edge cases.

1. A given land parcel may not have mail delivery (think: rural land, even with people living on it), so... what is its zip code? Does it even have a zip code? Remember, a zip code is defined as a set of mail delivery points.

2. A given land parcel may have multiple mail delivery points, each of which may have a different zip code (think: a large mall or commercial building with multiple tenants, where it may be more convenient for the USPS to deliver from two or more mail routes). Does that land parcel have more than one zip code or do you arbitrarily pick one? If it has more than one, does the whole parcel have both codes (so, overlapping polygons), or do you try to subdivide it somehow?

[Users of zip code polygons often want to preserve the capability to look up the zip code from a given lat/lng point. So they will yell at you if you choose to have overlapping polygons or two zip codes for one polygon.]

3. What about AFPO addresses that represent the current location of a group of people who move around all the time? An aircraft carrier out in the Pacific is not near any land parcels.

I was in case #2 for a while, and tbh it should be treated as the building's fault for being this way, cause ambiguous ZIP codes aren't really supported. The IRS refused to send my refund, mail kept getting lost, and various things involving credit kept flagging me for fraud. Also it looked like a PO box to some systems but wasn't. My solution was to move, or I could've gotten an actual PO box or other mailing address.

But polygons support it fine, they just overlap.

So 1 means the polygons don't cover the entirety of the US which is fine, 2 means some polygons overlap which is fine too, 3 means some zipcodes are excluded from scheme, as one might not be legally allowed to know where a particular unit is.

"Many postcodes for particular lat/lon" should be part of the polygon delivery schema, i.e. you get a list all the time.

Seems like a non-issue for most use cases.

loading story #50435743