2.0 KiB
2.0 KiB
Counts の言語別列
- 列は
languages.created_at ASC, languages.code ASCの順に生成する。 全名称列の後に全別名列を置く。Locale の数によって列を重複させない。 - 識別子は
name_ja、name_ain、aliases_ja、aliases_ain等とする。 言語の名称は Frontend の common 辞書を使う。 - 名称は記録済みの言語の主名称、別名はその言語の全別名を使う。 特定の文字体系で絞らず、記録済みの script_code 等を保持する。 履歴の時点評価と HistoryAccess は従来どおり適用する。
- 初期選択には UI ロカールの言語コードを使う。明示的な列・空選択は上書きしない。
旧 URL・API
- 出力列、子列、列順、ソートの旧
name_ain_kana等は、入力境界でname_ain等へ正規化する。表示・ソートは言語全体の値を対象とするため、 従来表示されなかった文字体系の値が表示され、並びが変わる場合がある。 - 抽出条件の旧ロカール付きキーは別扱いとし、従来の文字体系限定 SQL を維持する。 新規条件候補には出さない。既存条件の表示・編輯時だけ文字体系付きの項目名を示す。 利用者が新しい言語単位の項目を選択した場合にだけ、その条件を言語全体へ切り替える。
- 新しい条件の解釈を
name_scope=languageで明示する。 未指定又はlocaleの旧条件は旧仕様として扱い、例えばname_jaをname_ja_jpanという入力互換専用キーへ変換する。これにより Jpan 限定を保つ。 正規化後の URL はname_scope=languageと互換専用キーを保存し、再解釈を防ぐ。 - 新しい API 利用者が言語単位の条件を送る場合も
name_scope=languageを指定する。 指定のない既存 API のname_ja/aliases_ja条件は従来の Jpan 限定として扱う。 未知の name_scope は 400 とする。JSON・Base64 をクエリに格納しない。