JCC/JCGナンバーマスターの必要性
アマチュア無線の交信ログにおいて、JCC(Japan Century Cities)とJCG(Japan Century Guns)は非常に重要なデータです。交信相手の所在地を市区町村コードで記録することで、アワード申請やQSLカードの整理が格段に楽になります。Web Logbookでは、QSOログ入力時にJCC/JCGコードを選択・検索できるようにするため、まずマスターテーブルを整備することにしました。
データソース — JARLの公式リスト
JCC/JCGの正式なコード体系はJARL(日本アマチュア無線連盟)が管理しています。47都道府県のページからデータを取得しました。ところが、これが一筋縄ではいきません。JARLのHTMLページは2種類のフォーマットが混在していました。
1. テーブル形式 — TABLEタグで構造化されたもの 2. 連結テキスト形式 — BRタグで区切られただけのもの
両方のパターンに対応するパーサーを書いて、全47都道府県分を処理しました。
取得結果
| 種別 | 件数 |
|---|---|
| JCC(市) | 765件 |
| JCG(郡) | 379件 |
| 合計 | 1,144件 |
テーブル設計
codeをプライマリキーとし、JCC(4桁)とJCG(5桁)をtypeカラムで区別しています。都道府県コード(pref_code)を持たせることで、県別のフィルタリングも容易です。都道府県別の内訳(抜粋)
- 北海道: JCC 35市
- 愛知県: JCC 38市
- 千葉県: JCC 37市
- 大阪府: JCC 33市
- 茨城県: JCC 32市
苦労したポイント
JARLのページはShift_JIS(x-sjis)エンコーディングで、HTMLの構造も統一されていませんでした。また、廃止コードはフォントカラー(マゼンタ)で視覚的に区別されており、廃止日の表記も"Mar.31,2005"のような独自フォーマット。これらすべてに対応するパーサーを組む必要がありました。次のステップ
このマスターデータを活用して、QSOログ入力画面にJCC/JCG検索・選択機能を実装します。コード番号からの検索はもちろん、市町村名のインクリメンタルサーチにも対応予定です。---
*JCC/JCGマスター1,144件の整備が完了。Web Logbookの交信ログ機能に向けて、基盤データが揃いつつあります。*
