KazMuzik.net
Music / Technology / Healthcare / Immigration / アメリカ
Google
 
<< Rack-mount Linux server PSU trouble !? (#12)assaignment late submission #2 >>

GNIS related data bugs - KazMuzik Blog
2008-02-15 20:57

USGS geonamesCensus 2000 Gazetteer のファイルの parser を書いていたところ、いくつかデータのバグを発見しました。

まず、2008-01-28 にアップデートされた AllStates.zip にある、SC_DECI.txt (South Carolina) ですが、2箇所、フォーマットが壊れているところがあります。GNIS Feature ID = 2368088 の "Pine Ridge Volunteer Fire Department" と、ID=2368455 "Horry County Fire / Rescue Station 39 Carolina Forest" ですが、複数のラインになっていて、最後に空行が挿入されています。Parser の方でハンドルしようかとも思いましたが、明らかにデータのバグなので、gnis_manager@usgs.gov にレポートして(*)、とりあえずファイルの方を修正しておきました。

また、MP_DECI.txt (Northern Mariana Islands) には、5つ County のデータがないレコードがあります。Feature ID=1945631 "Agrihan Anchorage" と、2363209 から最後(236312)までの4つのレコードで、County のネームが、空白1文字になっているため、"...|MP|69| ||..." となっています。こちらの方はバグというよりは、たぶん、そのような仕様と思われるため、Parser の方に、workaround を入れておきました。

データそのものではありませんが、File Format にも間違いがあり、Primary Location の Primary Longitude DEC (decimal degrees) と、Source Location の Source Latitude DMS (degrees/minutes/seconds) の間にある、Source Location の State Alpha Code の記述が抜けています。これは、各ファイルの先頭行に、フィールドの簡単な説明があるので、わかりました。このことを考慮すると、データフォーマットはたまに変わる可能性もあるようなので、Parser の方で、ヘッダーを解析するなど、なんらかの対処を考えておいた方がいいかもしれません。

また、FIPS55 データ付きの File Format からのリンクに、FIPS PUB 55-3 があり、その後ろの方に、Table 1 として Tape Data Summary (Tenth Update Tape) という、State のコードなどの表がありますが、FIPS Code 09, Alpha Code CT の Connecticut が抜けています。

U.S. 政府発行のデータですが、いろいろバグはあるようです。


2008-02-28 update
(*) -> sampo - libtextcat language module posted

Tags: computer_technology