Automating Updating Process of ISO 639 Language Tables

After not manually updating the tables for some months I finally wrote a Makefile and a short Python program helping in updating the ISO 639-1/-2/-3 tables provided by the LoC and SIL. See the attached archive for Makefile, download script and patch files. Check the README file and hit "make" to get started.

As the LoC now started to deprecate ISO 639-2(B) codes, the columns Part2B and Part2T which before served as foreign keys are not directly useable anymore: the ISO_639_3 table continues to contain the old Part2B entries which makes JOINS a hassle. I therefore changed the ISO_639_2 table to include an own "Id" column serving as a key. Now a JOIN can simply be done on this new column, which both tables integrate.

On a side note: recently MySQL must have changed something is now I have to filter for the character set when exporting:

cat iso639codes.sql | grep -v "LOCK TABLES" | grep -v "UNLOCK TABLES" | grep -v "character_set_client" > iso639codes_clean.sql

Furthermore ISO 639-3 tables don't show the deprecation of ISO 639-2(B) codes for hrv and srp, which forces me to change my statistics a bit.

makeISO639Tables.tar.gz4.12 KB