suggestCorrection
INFO
houki-abbreviations v0.7.1 の dist/index.d.ts と specs/current/suggest_correction/spec.md から自動生成しました(仕様 ID 9 件・2026-10-10)。手で編集しないでください。再生成は node scripts/generate-reference.mjs です。
関数 ・ v0.4.0 で追加 ・ family では未使用
「もしかして」サジェスト。findSimilar の薄いラッパで、上位 N 件の formal だけを文字列配列で返す。LLM プロンプトでそのまま使える形。 query と一致した名前を持つエントリ(distance: 0)は入れない(v0.7.0 から)。
利用者と得られる結果
この関数の利用者と、利用者が渡すもの・得られる結果を示します。
- houki-abbreviations を import する利用者(houki-nta-mcp・houki-egov-mcp などの MCP サーバー、または独自のコード)。辞書に無い名前を渡して、「もしかして」として示す正式名称の一覧を文字列の配列で受け取る。LLM へのプロンプトにそのまま入れる用途を想定する
シグネチャ
import して呼ぶときの形です。パッケージの型定義(dist/index.d.ts)から写しています。
ts
function suggestCorrection(query: string, limit?: number): string[];例
型定義の JSDoc に書かれている例です。
例
ts
suggestCorrection('労働基準法施行例');
// → ['労働基準法施行規則']
suggestCorrection('民法');
// → ['民事訴訟法', '民事執行法', '民事保全法'](民法 自身は入らない)扱わないこと
この関数が意図して扱わないことです。
- 編集距離の上限(
maxDistance)やfilterを指定すること(指定したいときはfindSimilarを使う) - どの名前に近かったか・どれだけ近かったかを返すこと(
findSimilarのmatchedKeyとdistance) - 名前の一部で探すこと(
searchByName)
処理の流れ
仕様書の「処理の流れ」の節を、図も含めてそのまま写しています。図が大きいので畳んでいます。
処理の流れの図(仕様書の写し)
呼び出しを受けてから配列を返すまでの流れを示します。図の中の番号は「できること」の仕様 ID の末尾 3 桁です。
仕様項目の一覧
この関数の仕様項目 9 件の見出しです。仕様項目は受入テストと 1 対 1 で対応していて、条件と例は仕様書ページで読めます。
仕様項目の見出し(9 件)
| 仕様 ID | 仕様項目 |
|---|---|
| 001 | 近いエントリの正式名称を文字列の配列で返す |
| 002 | limit の件数で打ち切る |
| 003 | limit を省くと 5 件で打ち切る |
| 004 | 1 未満の limit には RangeError を投げる |
| 005 | 空の query には空配列を返す |
| 006 | 小数の limit には RangeError を投げる |
| 007 | NaN・Infinity・数でない limit には例外を投げる |
| 008 | 500 を超える limit には RangeError を投げる |
| 009 | query と一致した名前を持つエントリは候補に入れない |
関連ページ
このページの元になった文書と、あわせて読むページです。