ロケール

テキストフィールドとproseフィールドは、ロケールごとに値を持てます。読み取りでは言語を指定し、翻訳がないフィールドには、フォールバックチェーンが何を返すかを決めます。

翻訳の対象

テキストとproseフィールドは、レコードの最上位、インラインモデルの中、リストの項目、proseフィールドに置かれたモデルの中など、どこにあってもロケールごとに値を持ちます。数値、日付、リファレンス、メディアを含むそれ以外のすべてのフィールドタイプは、すべてのロケールで共有される1つの値を持ちます。画像のaltテキストは画像の値の一部なので、これも共有されます。

ロケールの設定

ロケールはプロジェクトごとに設定するBCP-47コードです。1つが既定で、オーサリングに使う言語です。それぞれにフォールバックのロケールを指定できます。プロジェクトにないロケール、自分自身、ループを閉じるロケールを指すフォールバックは、保存時に拒否されます。

翻訳は、コンソールのレコードエディターで書き込むか、AIエージェントがMCP経由で書き込みます。GraphQL APIとSDKは翻訳を読み取るだけで、書き込みはしません。

フォールバックチェーン

読み取りでlocaleを渡すと、各フィールドは個別に、次の順で解決されます。要求したロケール、そのロケールに設定されたフォールバック(順番どおり)、同じ表記言語でプロジェクトにある最も近い別のロケール、プロジェクトの既定、そしてオーサリングされた値です。値を持つ最初のものが返されるため、一部だけ翻訳されたレコードが、タイトルはあるロケールから、本文は別のロケールから返すことがあります。

最も近いものを選ぶ段階は、同じ表記標準の中に限られます。pt-PTの要求にpt-BRのコピーが返るのは、そのフォールバックを自分で設定した場合だけです。プロジェクトに設定されていないロケールでも、コンテンツは返り、最後は既定にたどり着きます。

欠けている翻訳を見つける

読み取りでlocaleStrictを設定すると、レスポンスに翻訳のなかったフィールドが一覧され、未設定のロケールはエラーとして報告されます。resolutionTraceは解決の経路全体を返し、ターゲティングのデバッグスコープを持つキーが必要です。どちらも、返されるコンテンツは変わりません。

詳細を読む

ローカライズのガイドで、ロケールの設定、フォールバックの順序、読み取りで返された内容を確認するためのstrictオプションとtraceオプションを説明しています。