出典・技術情報
開発者向けツール:
データベースの中身を直接確認・操作できるインタラクティブな開発者ビューを用意しました。
開発者ビューを開く
開発者ビューを開く
このページは本サービスのSQLiteデータベース構造を図と表でまとめたものです。検索窓で直接SQLクエリーを書く際など、参考にしてください。
出典
本サービスは以下の情報源を参考にしています:
- IPAmj明朝フォント - 文字情報技術促進協議会
- MJ文字情報一覧表 Ver.006.02 - 文字情報技術促進協議会
- 文字情報基盤変体仮名データ(MJ変体仮名) - 文字情報技術促進協議会
- 史料編纂所データベース異体字同定一覧
- Wikipedia: CJK互換漢字
- CHISE / 漢字構造情報データベース
- 氏名漢字カナ突合モデル - デジタル庁
- 行政事務標準文字追加明朝フォント - デジタル庁
- 行政事務標準文字一覧(変体仮名を含む全文字) - デジタル庁
- 行政事務標準文字当用フォント ファイル導入手順書別紙 - デジタル庁
- 行政事務標準文字当用フォント 非漢字文字図形名 - デジタル庁
- 行政事務標準文字 漢字属性情報一覧、部首一覧 - デジタル庁
- 文字情報基盤文字 JIS X 0213代替変換情報 - デジタル庁
- 行政事務標準文字 JIS X 0213代替変換情報 - デジタル庁
- ⽇本語⽂字コード⼊⾨ - 歴史とUnicodeにおける実装 - 楠正憲
文字コード範囲
- 漢字: U+4E00-U+9FFF(CJK統合漢字)、U+3400-U+4DBF(拡張A)など
- CJK互換漢字: U+F900-U+FAFF
- 変体仮名: U+1B000-U+1B0FF(文字情報基盤 変体仮名)
- 行政事務標準文字: U+100000-U+10FFFF(私用領域)など
検索結果タイルの色分け(種別)
検索結果タイルは規格ごとに色分けしています(種別ソートでも同じ優先順位)。
- 青(
tile-joyo): 常用漢字 - ティール(
tile-jis208): JIS X 0208(x0213が「1-」で始まるもの) - 水色(
tile-jis213): JIS X 0213(上記以外のx0213あり) - 赤(
tile-juki): 住基ネット統一文字コード付き - 緑(
tile-gyosei-coded): 行政事務標準(戸籍統一文字番号または登記コードあり) - オレンジ(
tile-gyosei-uncoded): 行政事務標準(戸籍統一文字番号または登記コードなし) - 関連文字(
related-kanji-tile): 背景のみグレーで表示(ボーダーは規格色のまま)
代替変換区分について
JIS X 0213代替変換における substitution_type の値は以下の意味を持ちます:
- 0 - 変更なし: 元の文字と同一の文字への変換(変換の必要なし)
- 1 - 異体字: 異体字への変換(字形は異なるが同じ意味の文字)
- 2 - 近似文字: 近似文字への変換(類似した文字への置き換え)
- 3 - 未定義: その他の変換または未定義の変換
読み情報の正規化について
読み情報は正規化されたテーブル構造で管理されています:
- readings テーブル: 一意な読み方を格納
- kanji_reading テーブル: 漢字と読みの多対多の関係を管理
- dictionary.reading カラム: 既に削除済み(正規化完了)
この構造により、同じ読みを持つ複数の漢字や、複数の読みを持つ漢字を効率的に管理できます。
全テーブル・カラム定義表
| テーブル | カラム | 型 | 説明 |
|---|---|---|---|
| dictionary | id | INTEGER | 主キー |
| glyph | TEXT | 図形(表示用) | |
| font | TEXT | フォント情報 | |
| mj_code | TEXT | MJ文字図形名 | |
| unicode | TEXT | 対応するUCS | |
| ucs_implemented | TEXT | 実装したUCS | |
| mjivs | TEXT | 実装したMoji_JohoコレクションIVS | |
| svs_implemented | TEXT | 実装したSVS | |
| koseki_code | TEXT | 戸籍統一文字番号 | |
| juki_code | TEXT | 住基ネット統一文字コード | |
| nyukan_seiji_code | TEXT | 入管正字コード | |
| nyukan_gaiji_code | TEXT | 入管外字コード | |
| kanji_policy_id | INTEGER | 漢字施策ID (kanji_policies.id) | |
| compatible_kanji | TEXT | 対応する互換漢字 | |
| x0213 | TEXT | JIS X 0213 | |
| x0213_hosetsu_renban | TEXT | X0213 包摂連番 | |
| x0213_hosetsu_kubun_id | INTEGER | X0213 包摂区分ID (x0213_hosetsu_kubun_types.id) | |
| x0212 | TEXT | X0212 | |
| mj_version_id | INTEGER | MJ文字図形バージョンID (mj_versions.id) | |
| touki_code | TEXT | 登記統一文字 | |
| total_strokes | INTEGER | 総画数(参考) | |
| daikanwa | TEXT | 大漢和 | |
| nihon_kangi_jiten | TEXT | 日本語漢字辞典 | |
| shin_daijiten | TEXT | 新大字典 | |
| daijigen | TEXT | 大字源 | |
| daikangorin | TEXT | 大漢語林 | |
| remarks | TEXT | 備考 | |
| kanji_policies | id | INTEGER | 主キー |
| policy_name | TEXT | 漢字施策名(常用漢字など) | |
| mj_versions | id | INTEGER | 主キー |
| version | TEXT | MJ文字図形バージョン | |
| x0213_hosetsu_kubun_types | id | INTEGER | 主キー |
| kubun_value | TEXT | 区分値(0, 2 など) | |
| kubun_description | TEXT | 区分説明(0:変更なし、2:包摂対象 など) | |
| update_history_entries | id | INTEGER | 主キー |
| version | TEXT | 更新バージョン | |
| description | TEXT | 更新内容 | |
| dictionary_update_history | id | INTEGER | 主キー |
| dictionary_id | INTEGER | 漢字ID (dictionary.id) | |
| update_history_id | INTEGER | 履歴ID (update_history_entries.id) | |
| update_order | INTEGER | 辞書内での適用順 | |
| radicals | id | INTEGER | 主キー |
| number | INTEGER | 部首番号 | |
| glyph | TEXT | 部首字形 | |
| radical_readings | id | INTEGER | 主キー |
| radical_id | INTEGER | 部首ID (radicals.id) | |
| reading_id | INTEGER | 読みID (readings.id) | |
| radical_variants | id | INTEGER | 主キー |
| radical_id | INTEGER | 部首ID (radicals.id) | |
| glyph | TEXT | 部首異体字形 | |
| readings | id | INTEGER | 主キー |
| reading | TEXT | 読み | |
| kanji_radical | id | INTEGER | 主キー |
| kanji_id | INTEGER | 漢字ID (dictionary.id) | |
| radical_id | INTEGER | 部首ID (radicals.id) | |
| radical_order | INTEGER | 部首の順序 | |
| inner_strokes | INTEGER | 内画数 | |
| kanji_reading | id | INTEGER | 主キー |
| kanji_id | INTEGER | 漢字ID (dictionary.id) | |
| reading_id | INTEGER | 読みID (readings.id) | |
| jisx0213_substitution | id | INTEGER | 主キー |
| source_code | TEXT | 変換元コード(Unicode) | |
| target_code | TEXT | 変換先コード(Unicode) | |
| substitution_type | INTEGER | 代替変換区分(0:変更なし 1:異体字 2:近似文字 3:未定義) | |
| hentaigana | id | INTEGER | 主キー |
| kanji_id | INTEGER | 変体仮名ID (dictionary.id) | |
| jibo_glyph | TEXT | 字母の文字 | |
| jibo_unicode | TEXT | 字母のUCS符号位置 (例: U+5B89) | |
| academic_id | TEXT | 学術用変体仮名番号 | |
| kokugo_url | TEXT | 国語研URL | |
| hentaigana_onka | id | INTEGER | 主キー |
| hentaigana_id | INTEGER | 変体仮名ID (hentaigana.id) | |
| onka | TEXT | 音価 | |
| v2n_substitution | id | INTEGER | 主キー |
| variant_code | TEXT | 異体字/CJK互換漢字コード (例: U+4E00, U+FA10) | |
| normal_code | TEXT | 標準漢字コード (例: U+4E01, U+585A) | |
| pup_ivs | id | INTEGER | 主キー |
| mj_code | TEXT | MJ文字図形名 | |
| pup_code | TEXT | 後方互換PUPコード | |
| pup_combined | id | INTEGER | 主キー |
| ucs_code1 | TEXT | UCSコード1 | |
| ucs_code2 | TEXT | UCSコード2 | |
| pup_code | TEXT | 後方互換PUPコード | |
| ids | id | INTEGER | 主キー |
| kanji_id | INTEGER | 漢字ID (dictionary.id) | |
| sequence | TEXT | 字形記述列 (IDS) | |
| variant_clusters | character_code | TEXT | 文字コード(MJ/GJ/UCSなど) |
| cluster_id | TEXT | 異体字クラスタID |
SQLクエリ例
- 行政事務標準文字で追加された全ての文字を表示
SELECT * FROM dictionary WHERE mj_code like 'GJ0%'; - 部首番号162「辶」で漢字を検索
SELECT k.glyph, k.mj_code FROM dictionary k JOIN kanji_radical kr ON k.id = kr.kanji_id JOIN radicals r ON kr.radical_id = r.id WHERE r.number = 162; - 「辺」の関連文字を抽出
SELECT target_code AS related_code FROM jisx0213_substitution WHERE source_code LIKE 'U+8FBA%' UNION SELECT source_code AS related_code FROM jisx0213_substitution WHERE target_code LIKE 'U+8FBA%' UNION SELECT normal_code AS related_code FROM v2n_substitution WHERE variant_code LIKE 'U+8FBA%' UNION SELECT variant_code AS related_code FROM v2n_substitution WHERE normal_code LIKE 'U+8FBA%'; - 「あ」の変体仮名を検索
SELECT k.* FROM dictionary k JOIN jisx0213_substitution j ON k.unicode = j.source_code WHERE j.target_code = 'U+3042' AND k.unicode LIKE 'U+1B%'; - 字母が「安」の変体仮名を検索
SELECT k.* FROM dictionary k JOIN hentaigana h ON k.id = h.kanji_id WHERE h.jibo_glyph = '安' OR h.jibo_unicode = 'U+5B89'; - 読み「やま」で検索(正規化テーブル使用)
SELECT DISTINCT d.* FROM dictionary d JOIN kanji_reading kr ON d.id = kr.kanji_id JOIN readings r ON kr.reading_id = r.id WHERE r.reading = 'やま'; - 各種コード検索
-- Unicode/GJ文字(U+xxxx, G+xxxx) SELECT * FROM dictionary WHERE unicode = 'U+8FBA'; -- 住基ネット統一文字(J+xxxx) SELECT * FROM dictionary WHERE juki_code = 'J+307E'; -- 戸籍統一文字(xx-xx-xx) SELECT * FROM dictionary WHERE koseki_code = '01-01-01'; -- JIS X 0213コード検索 SELECT * FROM dictionary WHERE x0213 = '1-42-53'; -- 登記統一文字検索 SELECT * FROM dictionary WHERE touki_code = '00437640'; -- 入管正字/外字コード SELECT * FROM dictionary WHERE nyukan_seiji_code = 'A123456'; SELECT * FROM dictionary WHERE nyukan_gaiji_code = 'AX12345678'; -- IVS検索 SELECT * FROM dictionary WHERE mjivs LIKE '%U+8FBA%U+E0100%';
当サイトではGoogle Analyticsを利用してアクセス解析を行っています。