
"Henk-Jan van Tuyl"
On Wed, 06 Mar 2013 20:53:57 +0100, Obscaenvs
wrote: Do not forget that country names can change; e.g. the Netherlands Antilles were split up in 2010. This might cause problems if you store country codes in a database. If you simply remove obsolete country codes, the database can not be used properly any more.
P.S. If you want people to be able to enter there country of birth, you should include all countries that existed in the past 116 years; if historians should be able to use it, you should include all countries that ever existed.
These are both important points, but I think they fall outside the remit of a library for ISO 3166 country codes, which I wrote originally for use in circumstances where some other standard just says “an ISO 3166 country code”. If the country codes standard included (as ISO 639 language codes does) historical codes, it would be appropriate to include them in that library, but since it doesn’t, it requires a separate library. Quite how far one should go back in this separate library I cannot say, but there are obvious use cases for country /names/ for countries that ceased to exist before 1974 and which therefore have never had an ISO 3166 country code. * * * I’m currently working on ISO 639 which again will be a presentation of the standard as Haskell data types. It requires ISO 15924 Script codes. It’s irritating how these things have been standardised: the registry for ISO 639 is a different format from ISO 15924, and the former includes (presumably non-normatively) records for the script codes. In 639 ranges are specified with “..” but in 15924 they are simply mentioned in the names :-(. -- Jón Fairbairn Jon.Fairbairn@cl.cam.ac.uk http://www.chaos.org.uk/~jf/Stuff-I-dont-want.html (updated 2012-10-07)