第1の時刻と第2の時刻の間の時間間隔中に翻訳に対してなされた変更を表す翻訳データを翻訳リポジトリに記憶するステップであって、前記翻訳データが、第1の言語のテキストメッセージ、前記テキストメッセージのそれぞれに対するそれぞれの識別子、および複数の前記テキストメッセージの第2の言語への対応する翻訳を識別する、記憶するステップと、前記それぞれの識別子のうち1つまたは複数をソースコードプロジェクトに含めるステップと、前記テキストメッセージの1つまたは複数のそれぞれについて、前記第1の時刻になされた前記テキストメッセージの前記第2の言語への翻訳、前記第2の時刻になされた前記テキストメッセージの前記第2の言語への異なる翻訳、および前記第1の時刻と前記第2の時刻の間の前記テキストメッセージに関する翻訳変更のタイプを識別する、メッセージ変更データのリストを生成するステップであって、前記翻訳変更のタイプが、変更、新規追加、または翻訳なし、のうちの1つである、生成するステップと、前記ソースコードプロジェクトを、前記第2の言語で参照ウェブアプリケーションに構築するステップであって、前記ソースコードプロジェクトの各テキストメッセージの前記識別子を、前記第2の時刻になされた前記第2の言語への前記テキストメッセージの前記翻訳で置換するステップ、および翻訳が前記時間間隔中に変更されたテキストメッセージに対して、翻訳が変更された前記テキストメッセージの前記識別子を、前記テキストメッセージの前記翻訳に関連する隠された情報として挿入するステップであって、翻訳が時間ウィンドウ中に変更されていないテキストメッセージに関する前記識別子は、前記参照ウェブアプリケーションの前記テキストメッセージの前記翻訳に関連する隠された情報として挿入されない、挿入するステップを含む、構築するステップと、翻訳チェックのためにユーザに提示するための前記参照ウェブアプリケーションをレンダリングするステップであって、関連する隠された識別子を有するテキストメッセージを強調表示するステップ、および、各強調表示テキストメッセージに対して、前記レンダリングされた参照アプリケーションの中の前記強調表示テキストメッセージに関連したガジェットを組み込むステップであって、前記ガジェットが、前記第1の時刻になされた前記強調表示テキストメッセージの翻訳と、前記第2の時刻になされた前記強調表示テキストメッセージの前記異なる翻訳との間の比較を前記ユーザに提示するように動作可能である、組み込むステップを含む、レンダリングするステップとを含む、コンピュータで実行される方法。第1の時刻と第2の時刻の間の時間間隔中の、翻訳に対する変更を表す翻訳データを、翻訳リポジトリに記憶するステップであって、前記翻訳データが、第1の言語のテキストメッセージ、前記テキストメッセージのそれぞれに対するそれぞれの識別子、および複数の前記テキストメッセージの第2の言語への対応する翻訳を識別する、記憶するステップと、前記それぞれの識別子のうち1つまたは複数をソースコードプロジェクトに含めるステップと、前記ソースコードプロジェクトを、前記第2の言語で参照アプリケーションに構築するステップであって、前記ソースコードプロジェクトの各テキストメッセージの前記識別子を、前記第2の時刻になされた前記第2の言語のテキストメッセージの翻訳で置換するステップ、および翻訳が前記時間間隔中に変更されたテキストメッセージに対して、翻訳が変更された前記テキストメッセージの識別子を、前記テキストメッセージの前記翻訳に関連する隠された情報として挿入するステップであって、翻訳が時間ウィンドウ中に変更されていないテキストメッセージに関する識別子は、前記参照アプリケーションの前記テキストメッセージの前記翻訳に関連する隠された情報として挿入されない、挿入するステップを含む、構築するステップと、翻訳チェックのためにユーザに提示するための前記参照アプリケーションをレンダリングするステップであって、関連する隠された識別子を有する前記テキストメッセージを強調表示するステップを含む、レンダリングするステップとを含む、コンピュータで実行される方法。前記翻訳データがリストとして表される、請求項2に記載の方法。特定のテキストメッセージに関して、前記第1の時刻になされた前記第2の言語の前記特定のテキストメッセージの翻訳、および前記第2の時刻になされた前記第2の言語の前記特定のテキストメッセージの翻訳を識別するメッセージ変更データを生成するステップをさらに含む、請求項2に記載の方法。前記メッセージ変更データがリストとして表される、請求項4に記載の方法。前記メッセージ変更データを生成するステップが、前記第1の時刻と前記第2の時刻の間の前記特定のテキストメッセージに関する翻訳変更のタイプを識別するデータを生成するステップをさらに含む、請求項4に記載の方法。前記翻訳変更のタイプが、変更、新規追加、または翻訳なし、のうちの1つである、請求項6に記載の方法。ユーザに提示するための前記参照アプリケーションをレンダリングするステップが、各強調表示テキストメッセージに対して、前記レンダリングされた参照アプリケーションの中に、前記強調表示テキストメッセージに関連したガジェットを組み込むステップであって、前記ガジェットが、前記第1の時刻における前記強調表示テキストメッセージの前記翻訳と、前記第2の時刻における前記強調表示テキストメッセージの前記翻訳との間の比較を前記ユーザに提示するように動作可能である、組み込むステップを含む、請求項2に記載の方法。前記レンダリングされた参照アプリケーションの中に、前記強調表示テキストメッセージに関連したガジェットを組み込むステップが、ユーザ入力に応答して、前記第1の時刻になされた前記強調表示テキストメッセージの前記翻訳を、前記第2の時刻になされた前記強調表示テキストメッセージの前記翻訳と併せて表示するユーザインターフェース要素を生成するステップを含む、請求項8に記載の方法。前記参照アプリケーションがウェブアプリケーションである、請求項2に記載の方法。前記ウェブアプリケーションが複数のウェブページを含み、前記方法が、前記ウェブアプリケーションの各ウェブページ向けに、前記ページ上の翻訳変更に関するサマリー情報を含んでいるレポートを生成するステップをさらに含む、請求項10に記載の方法。1つまたは複数のコンピュータと、命令を記憶している1つまたは複数の記憶デバイスであって、前記命令は、前記1つまたは複数のコンピュータによって実行されると、第1の時刻と第2の時刻の間の時間間隔中の、翻訳に対する変更を表す翻訳データを翻訳リポジトリに記憶するステップであって、前記翻訳データが、第1の言語のテキストメッセージ、前記テキストメッセージのそれぞれに対するそれぞれの識別子、および複数の前記テキストメッセージの第2の言語への対応する翻訳を識別する、記憶するステップと、前記それぞれの識別子のうち1つまたは複数をソースコードプロジェクトに含めるステップと、前記ソースコードプロジェクトを、前記第2の言語で参照アプリケーションに構築するステップであって、前記ソースコードプロジェクトの各テキストメッセージの前記識別子を、前記第2の時刻になされた前記第2の言語のテキストメッセージの翻訳で置換するステップ、および翻訳が前記時間間隔中に変更されたテキストメッセージに対して、翻訳が変更された前記テキストメッセージの識別子を、前記テキストメッセージの前記翻訳に関連する隠された情報として挿入するステップであって、翻訳が時間ウィンドウ中に変更されていないテキストメッセージに関する識別子は、前記参照アプリケーションの前記テキストメッセージの前記翻訳に関連する隠された情報として挿入されない、挿入するステップを含む、構築するステップと、翻訳チェックのためにユーザに提示するための前記参照アプリケーションをレンダリングするステップであって、関連する隠された識別子を有する前記テキストメッセージを強調表示するステップを含む、レンダリングするステップとを含む動作を、前記1つまたは複数のコンピュータに実行させる、1つまたは複数の記憶デバイスとを備えるシステム。前記翻訳データがリストとして表される、請求項12に記載のシステム。前記動作が、特定のテキストメッセージに関して、前記第1の時刻になされた前記第2の言語の前記特定のテキストメッセージの翻訳、および前記第2の時刻になされた前記第2の言語の前記特定のテキストメッセージの翻訳を識別するメッセージ変更データを生成するステップをさらに含む、請求項12に記載のシステム。前記メッセージ変更データを生成するステップが、前記第1の時刻と前記第2の時刻の間の前記特定のテキストメッセージに関する翻訳変更のタイプを識別するデータを生成するステップをさらに含む、請求項14に記載のシステム。前記翻訳変更のタイプが、変更、新規追加、または翻訳なし、のうちの1つである、請求項15に記載のシステム。ユーザに提示するための前記参照アプリケーションをレンダリングするステップが、各強調表示テキストメッセージに対して、前記レンダリングされた参照アプリケーションの中に、前記強調表示テキストメッセージに関連したガジェットを組み込むステップであって、前記ガジェットが、前記第1の時刻における前記強調表示テキストメッセージの前記翻訳と、前記第2の時刻における前記強調表示テキストメッセージの前記翻訳との間の比較を前記ユーザに提示するように動作可能である、組み込むステップを含む、請求項12に記載のシステム。前記レンダリングされた参照アプリケーションの中に、前記強調表示テキストメッセージに関連したガジェットを組み込むステップが、ユーザ入力に応答して、前記第1の時刻になされた前記強調表示テキストメッセージの前記翻訳を、前記第2の時刻になされた前記強調表示テキストメッセージの前記翻訳と併せて表示するユーザインターフェース要素を生成するステップを含む、請求項17に記載のシステム。前記参照アプリケーションがウェブアプリケーションである、請求項12に記載のシステム。前記ウェブアプリケーションが、複数のウェブページを含み、前記動作が、前記ウェブアプリケーションの各ウェブページ向けに、前記ページ上の翻訳変更に関するサマリー情報を含んでいるレポートを生成するステップをさらに含む、請求項19に記載のシステム。概して、本明細書に記載の主題の一態様は、第1の時刻と第2の時刻の間の時間間隔中に翻訳に対してなされた変更を表す翻訳データを翻訳リポジトリに記憶するアクションであって、翻訳データが、第1の言語のテキストメッセージ、各テキストメッセージに対するそれぞれの識別子、および複数のテキストメッセージの第2の言語への対応する翻訳を識別する、記憶するアクションと、それぞれの識別子のうち1つまたは複数をソースコードプロジェクトに含めるアクションと、テキストメッセージの1つまたは複数のそれぞれについて、第1の時刻になされたテキストメッセージの第2の言語への翻訳、第2の時刻になされたテキストメッセージの第2の言語への異なる翻訳、および第1の時刻と第2の時刻の間のテキストメッセージに関する翻訳変更のタイプを識別する、メッセージ変更データのリストを生成するアクションであって、翻訳変更のタイプが、変更、新規追加、または翻訳なし、のうちの1つである、生成するアクションと、ソースコードプロジェクトを、第2の言語で参照ウェブアプリケーションに構築するアクションであって、ソースコードプロジェクトの各テキストメッセージの識別子を、第2の時刻になされた第2の言語へのテキストメッセージの翻訳で置換するアクション、および翻訳がその時間間隔中に変更されたテキストメッセージに対して、翻訳が変更されたテキストメッセージの識別子を、テキストメッセージの翻訳に関連する隠された情報として挿入するアクションであり、翻訳が時間ウィンドウ中に変更されていないテキストメッセージに関する識別子は、参照ウェブアプリケーションのテキストメッセージの翻訳に関連する隠された情報として挿入されない、挿入するアクションを含む、構築するアクションと、翻訳チェックのためにユーザに提示するための参照ウェブアプリケーションをレンダリングするアクションであって、関連する隠された識別子を有するテキストメッセージを強調表示するアクション、および各強調表示テキストメッセージに対して、レンダリングされた参照アプリケーションの中の強調表示テキストメッセージに関連したガジェットを組み込むアクションであって、ガジェットが、第1の時刻になされた強調表示テキストメッセージの翻訳と、第2の時刻になされた強調表示テキストメッセージの異なる翻訳との間の比較をユーザに提示するように動作可能である、組み込むアクションを含む、レンダリングするアクションとを含む方法で具現化することができる。この態様の他の実施形態には、それぞれがこの方法のアクションを実行するように構成されている、対応するシステム、装置、およびコンピュータの記憶装置上に符号化されたコンピュータプログラムが含まれる。システムにインストールされ、動作においてシステムにアクションを実行させる、ソフトウェア、ファームウェア、ハードウェア、またはそれらの組合せを有することによって、1つまたは複数のコンピュータのシステムが、特定のアクションを実行するように構成され得る。1つまたは複数のコンピュータプログラムは、データ処理装置によって実行されたとき装置にアクションを実行させる命令を含むことによって、特定のアクションを実行するように構成され得る。概して、本明細書に記載の主題の別の態様は、第1の時刻と第2の時刻の間の時間間隔中の、翻訳に対する変更を表す翻訳データを、翻訳リポジトリに記憶するアクションであって、翻訳データが、第1の言語のテキストメッセージ、テキストメッセージのそれぞれに対するそれぞれの識別子、および複数のテキストメッセージの第2の言語への対応する翻訳を識別する、記憶するアクションと、それぞれの識別子のうち1つまたは複数をソースコードプロジェクトに含めるアクションと、ソースコードプロジェクトを、第2の言語で参照アプリケーションに構築するアクションであって、ソースコードプロジェクトの各テキストメッセージの識別子を、第2の時刻になされた第2の言語のテキストメッセージの翻訳で置換するアクション、および翻訳がその時間間隔中に変更されたテキストメッセージに対して、翻訳が変更されたテキストメッセージの識別子を、テキストメッセージの翻訳に関する隠された情報として挿入するアクションであって、翻訳が時間ウィンドウ中に変更されていないテキストメッセージに関する識別子は、参照アプリケーションのテキストメッセージの翻訳に関連する隠された情報として挿入されない、挿入するアクションを含む、構築するアクションと、翻訳をチェックするためにユーザに提示するための参照アプリケーションをレンダリングするアクションであって、関連する隠された識別子を有するテキストメッセージを強調表示するアクションを含む、レンダリングするアクションとを含む方法で具現化することができる。この態様の他の実施形態には、それぞれがこの方法のアクションを実行するように構成されている、対応するシステム、装置、およびコンピュータの記憶装置上に符号化されたコンピュータプログラムが含まれる。システムにインストールされ、動作においてシステムにアクションを実行させる、ソフトウェア、ファームウェア、ハードウェア、またはそれらの組合せを有することによって、1つまたは複数のコンピュータのシステムが、特定のアクションを実行するように構成され得る。1つまたは複数のコンピュータプログラムは、データ処理装置によって実行されたとき装置にアクションを実行させる命令を含むことによって、特定のアクションを実行するように構成され得る。これらおよび他の実施形態は、それぞれが、以下の特徴の1つまたは複数を任意選択で含むことができる。翻訳データはリストとして表すことができる。この方法は、特定のテキストメッセージに関して、第1の時刻になされた第2の言語の特定のテキストメッセージの翻訳、および第2の時刻になされた第2の言語の特定のテキストメッセージの翻訳を識別するメッセージ変更データを生成するアクションをさらに含むことができる。メッセージ変更データはリストとして表すことができる。メッセージ変更データを生成するアクションは、第1の時刻と第2の時刻の間の特定のテキストメッセージに関する翻訳変更のタイプを識別するデータを生成するアクションをさらに含んでよい。翻訳変更のタイプは、変更、新規追加、または翻訳なし、のうちの1つであり得る。ユーザに提示するための参照アプリケーションをレンダリングするアクションは、各強調表示テキストメッセージに対して、レンダリングされた参照アプリケーションの中の強調表示テキストメッセージに関連したガジェットを組み込むアクションであって、ガジェットが、第1の時刻における強調表示テキストメッセージの翻訳と、第2の時刻における強調表示テキストメッセージの翻訳との間の比較をユーザに示すように動作可能であるアクションとを含んでよい。レンダリングされた参照アプリケーションの中に、強調表示テキストメッセージに関連したガジェットを組み込むアクションは、ユーザ入力に応答して、第1の時刻になされた強調表示テキストメッセージの翻訳を、第2の時刻になされた強調表示テキストメッセージの翻訳と併せて表示するユーザインターフェース要素を生成するアクションを含むことができる。参照アプリケーションはウェブアプリケーションであり得る。ウェブアプリケーションは複数のウェブページを含むことができ、この方法は、ウェブアプリケーションの各ウェブページ向けに、ページ上の翻訳変更に関するサマリー情報を含んでいるレポートを生成するアクションをさらに含むことができる。本明細書に記載の主題の特定の実施形態は、以下の利点の1つまたは複数を実現するように実装され得る。翻訳者は、翻訳すべきテキストをより正確に翻訳するために、こうしたテキストが構築されたアプリケーションの中でどのように用いられるかといった文脈上の知識を得ることができる。翻訳者は、特定の新規ソフトウェアプロジェクト向けにテキストメッセージを翻訳するとき、同じテキストメッセージの様々な翻訳を参考として用いることができる。ソフトウェアローカリゼイションの翻訳者は、特定のテキストメッセージの翻訳の明瞭な知識を時間をかけて与えられ、このテキストメッセージが実際に表示されかつ用いられるユーザインターフェースの直観的な表示を得ることができる。様々な図面における同様の参照番号および名称は、同様の要素を示す。図1は、記載された主題の実施形態によるアプリケーションのローカリゼイションにおいて翻訳支援を提供するための例示的システム100を示す。システム100は、1つまたは複数の物理的位置の1つまたは複数のコンピュータ上で実装することができ、翻訳監視モジュール120、参照構築モジュール122およびレンダリングモジュール124を含むことができる。システム100の、翻訳監視モジュール120と、参照構築モジュール122と、レンダリングモジュール124との間の機能の分割は、単なる例示である。以下に記載の、機能のさらなる分割が実装され得、あるいは、システム100は、以下に記載の機能をすべて実行する単一のソフトウェアエンジンであり得る。翻訳リポジトリ110およびソースコードプロジェクトベース112は、システム100への接続またはシステム100によるアクセスが可能になり得る。翻訳リポジトリ110は、ソースコードプロジェクトベース112に記憶された特定のソースコードプロジェクトに基づいてターゲットアプリケーションの異言語バージョンを構築するのに用いられる翻訳データを含むことができる。いくつかの実施態様では、ソースコードプロジェクトベース112は、ソフトウェア開発会社内で開発中の複数のソースコードプロジェクトを含んでおり、翻訳リポジトリ110は、ソースコードプロジェクトベース112のソースコードプロジェクトを、例えば様々なターゲット言語のアプリケーションのバージョンといったローカライズされたアプリケーションへと構築するのに用いることができるテキストメッセージの異言語での翻訳を記憶するのに用いられる。翻訳リポジトリ110は、複数の言語でのテキストメッセージの翻訳を記憶することができる。これらの翻訳は、翻訳者によって、英語などのソース言語のテキストメッセージに基づき、例えば個別の翻訳支援ユーティリティを用いて提供されてよい。この翻訳支援ユーティリティはウェブアプリケーションであり得、これは、ウェブページ上のテキストメッセージを表示し、翻訳者に対して、選択されたターゲット言語への翻訳を入力するように要求して、一旦翻訳が確認されると、これらの翻訳を翻訳リポジトリに記憶する。翻訳者によって翻訳リポジトリに供給された翻訳は、例えばPerforce、CVSまたはMicrosoftVisualSourcesafeといったバージョン管理システムによって管理されてよい。別々の翻訳者が、他の翻訳者によって供給された翻訳をチェックし、いくつかのテキストメッセージの翻訳を類似のテキストメッセージの以前の翻訳と比較することなどができるように、さらなる機能が翻訳支援ユーティリティに用意され得る。ソースコードプロジェクトベース112に記憶されたソースコードプロジェクトは、アプリケーションのユーザインターフェースに表示すべきテキストメッセージが挿入されることになっている位置に、特定のメッセージ識別子を有する。これらのメッセージ識別子のそれぞれが、例えば英語といったソース言語のそれぞれの対応するテキストメッセージとともに、翻訳すべきエントリとして翻訳リポジトリ110に記録され得る。仕上がったソースコードプロジェクトのすべてのテキストメッセージが、例えば中国語といった特定のターゲット言語に翻訳が完了した後、このソースコードプロジェクトは、すべてのソースコードプロジェクトのメッセージ識別子を、例えば中国語といったターゲット言語の翻訳で置換し、次いで、このソースコードを実行可能プログラムへとコンパイルすることによって、ターゲット言語のアプリケーションに構築され得る。いくつかの実施態様では、この実行可能プログラムは、例えばサーバ側で実行されるウェブアプリケーション、クライアント側でJavaScript登録商標関数によって実装された豊富な機能を有するウェブアプリケーションなどのウェブアプリケーションでよい。翻訳監視モジュール120は、指定された時間間隔にわたって、特定のソースコードプロジェクトで用いられるテキストメッセージの翻訳リポジトリ110の変化を監視して、この時間間隔中の翻訳の差異を記録する翻訳変更リスト121を作成することができる。時間間隔は、例えばソースコードプロジェクトのテキストを翻訳しようとする翻訳者といったユーザによって指定されてよい。例えば、翻訳者は、例えば1週間前と現在時刻の間で、特定のソースコードプロジェクトに関するテキストメッセージの1つまたは複数の特定のターゲット言語の翻訳の差異を見つけようとする可能性がある。あるいは、時間間隔は、例えば2数週間前といった第1の前時刻と、例えば1週間前といった第2の前時刻の間でよい。いくつかの実施態様では、ユーザは、例えばその言語のアプリケーションの以前のバージョンを識別することによって時間間隔を指定してよい。システムは、次いで、例えばアプリケーションの以前のバージョンで用いられた翻訳が生成された時刻と現在時刻の間の時間間隔を生成することができる。システムの参照構築モジュール112は、この翻訳変更リスト121に基づいて、ソースコードプロジェクトベース112に記憶されるソースコードプロジェクトを構築することができる。この構造は、さらになる処理のために、アプリケーションの、時間間隔中に変更されたことが判明しているテキストメッセージのそれぞれのメッセージ識別子を維持することができる。ソースコードプロジェクトを構築するためのこの技法は、参照構造と称され得る。上記で述べた参照構造技法の結果が、参照アプリケーション123である。参照アプリケーション123は、システム100のレンダリングモジュール124によってレンダリングされ、レンダリングされたアプリケーション125の特定の機能を翻訳者に提示することができる。次いで、翻訳者は、ユーザ環境の指定時間間隔中に変更された様々な翻訳を評論して、各テキストメッセージが適切に翻訳されていることを確認することができる。機能は、翻訳者による、アプリケーションの、表示されたユーザ環境で改訂する必要のあるテキストメッセージの翻訳のさらなる変更を可能にする、レンダリングされたアプリケーション125で翻訳者に提供されてよい。図2は、記載された主題の実施形態によるアプリケーションのローカリゼイションにおいて翻訳支援を提供するための例示的サーバシステムの概略図である。図2の例示的サーバは、1つまたは複数のプロセッサ212を含むハードウェアの層またはファームウェア構造と、コンピュータ可読媒体216と、ネットワーク230を通じて他のコンピュータと通信する通信インターフェース218と、ユーザインターフェースデバイス220と、任意の追加デバイス214とを含むことができる。アプリケーションのローカリゼイションの翻訳支援を提供するための特定のアプリケーションモジュールは、サーバ200の動作を支援するハードウェアまたはファームウェアに加えて、サーバ200のオペレーティングシステム上でも動作することができる。これらのアプリケーションモジュールは、翻訳モジュール120、参照構築モジュール122およびレンダリングモジュール124を含んでよい。いくつかの実施態様では、サーバ200は、ネットワーク230に接続され、翻訳監視モジュール120によって、ネットワーク230を介して翻訳リポジトリ110の翻訳変更を監視する。サーバ200の参照構築モジュール122は、翻訳リポジトリ110に対する変更を監視することの結果として、サーバ200上に生成された翻訳変更リストの情報を用いて、ネットワーク230を通じてソースコードプロジェクトベース112から受け取ったソースコードプロジェクトの参照を構築することができる。この参照構築プロセスが完了した後、レンダリングモジュール124は、アプリケーションの様々なユーザインターフェースに表示されたテキストメッセージの翻訳をさらに評論するように、サーバ200上のこの参照アプリケーションを翻訳者に対してレンダリングすることができる。あるいは、翻訳リポジトリ110とソースコードプロジェクトベース112の任意の片方または両方が、同じサーバ200上に配置されてよい。図3Aは、記載された主題の実施形態によってアプリケーションを構築するのに用いられるテキストメッセージを記憶する例示的翻訳リポジトリを示す。例示的翻訳リポジトリでは、ソース言語の各テキストメッセージは固有の識別子を有してよく、これは、テキストメッセージまたはこのテキストメッセージの特定の言語への翻訳が、ソースコードプロジェクトのコードの適切な位置に配置されるべきであることを意味するために、ソースコードプロジェクトにおいて用いられ得る。翻訳リポジトリの各テキストメッセージは、1つまたは複数の言語での翻訳を有してよい。この例では、翻訳リポジトリの第1のエントリは開始というテキストメッセージであり、これは、メッセージid12111によって一意的に識別され、中国語と日本語の両方の翻訳を有する。同様に、テキストメッセージ評論、名前を付けて保存、および校訂のすべてがそれぞれの固有の識別子を有し、それらの中国語および日本語の対応する翻訳が既にあってもなくてもよい。各テキストメッセージは、単語、慣用句、文、または複数の文でもよく、特定のテキストメッセージのターゲット言語への翻訳が、特定の時刻に、まだターゲット言語で用意されていなくてもよいことに留意されたい。また、本明細書に記載の技法は、テキストメッセージの翻訳に対してなされたいかなる変更も、テキストメッセージのバージョンを追跡する例えばバージョン管理システムといったシステムによって管理される環境で動作するものであり、その結果、システムに照会することにより、変更された時刻および以前の翻訳を容易に取得することができる。図3Bは、記載された主題の実施形態に従って、翻訳監視モジュールによって、図3Aに示されるような翻訳リポジトリの情報に基づいて処理される翻訳情報の例示の表を示す図である。これは、例えば図1のシステム100といったシステムが、特定のこのソースコードプロジェクトのローカライズにおける翻訳支援を提供するように動作するとき、特定のソースコードプロジェクト向けに生成される表であり得る。この表の各エントリは、特定の言語への翻訳がいくつか変更されている図3Aに示されるような翻訳リポジトリのテキストメッセージに関連する情報である。例えば、この表は、特定のソースコードプロジェクトに用いられるすべてのテキストメッセージに関する、図3Aに示された翻訳リポジトリの、1週間前と現在時刻の間の中国語の翻訳変更を含み得る。この表は、先週中または他の期間において何らかの変更があったテキストメッセージのメッセージ識別子を維持するためのフィールドmsgIDを含む。フィールドのタイプは、テキストメッセージの翻訳に対してなされた特定のタイプの変更を明示するために用いられる。この表は、翻訳変更表と称されたとしても、この時間間隔で実際に変更されたテキストメッセージを記録することに加えて、特定の時刻にまだいかなる翻訳もないテキストメッセージも記録することができるので、この名称は便宜のためにのみ用いられることに留意されたい。したがって、翻訳変更のタイプは、変更、新規追加および翻訳なしを含んでよい。タイプ変更は、同じテキストメッセージの翻訳が、この期間に変更されたことを意味する。例えば、この表では、開始というテキストメッセージが、1週間前には、中国語で、と翻訳されていたが、そのときから、中国語のへと変更されている。タイプ新規追加は、例えばソースコードプロジェクトが変更されており、新規のテキストメッセージがソースコードプロジェクトに追加されたので、1週間前には翻訳リポジトリに存在しなかったが、問題となっているプロジェクトに対して誰かが先週中に追加したテキストメッセージを指す。タイプ翻訳なしは、同じプロジェクトに関して、まだターゲット言語に翻訳されていないテキストメッセージを指すのに用いられる。図3Bの表では、テキストメッセージ映像の公開はまだ翻訳されておらず、この翻訳変更リストに翻訳なしとして記録されたものである。さらに、変更リストは、前時刻および現在時刻におけるそれぞれの翻訳を記憶するフィールドをそれぞれ含むことができる。図3Bに示されるように、評論というテキストメッセージの翻訳は、1週間前には中国語のであったが、変更されて、現在では中国語のとなっている。一般に、図3Aに示されるような翻訳変更リストは、初めて翻訳されることになっているテキストメッセージを含めて、翻訳者が評論すべき特定のソースコードプロジェクトに関するすべてのテキストメッセージのターゲット言語の翻訳情報を記録することができる。さらに、この翻訳変更リストは、特定のテキストメッセージに関して、複数のターゲット言語のテキストメッセージの翻訳変更に関する情報を含み得る。その場合、そのようなさらなる言語のそれぞれに関して、翻訳変更のタイプと、以前の翻訳と、現在の翻訳とに関する個別のフィールドが含まれ得る。いくつかの実装態様では、翻訳変更リストは、すなわち図2Aに示されるような翻訳リポジトリに記憶されたものと同一のメッセージ識別子に加えて、参照アプリケーションに用いられるべき翻訳変更リストの各テキストメッセージに対して新規のメッセージ識別子を割り当てる別のフィールドを含む。これらのテキストメッセージ識別子を用いることによって、システムは、レンダリングモジュールが後に用いるように他と区別して参照アプリケーションに組み込むのには適切ではない可能性がある、翻訳リポジトリから受け継いだメッセージ識別子を用いなくてもよいことになる。図4は、記載された主題の実施形態によるアプリケーションのローカリゼイションにおいて翻訳支援を提供するための例示的プロセス400を示す流れ図である。プロセス400は、1つまたは複数のロケーションに配置された1つまたは複数のコンピュータのシステムによって実行され得る。例えば、図1のシステム100は、プロセス400を実行するのに使用することができる。ステップ402で、ユーザは翻訳支援システムに対して、1つまたは複数の特定の前時刻を入力として指定してよい。例えば、翻訳者は、例えば1週間前と現在時刻の間、または3週間前と1週間前との間で、特定のソースコードプロジェクトに関するテキストメッセージの1つまたは複数の特定のターゲット言語の翻訳の差異を見つけようとする可能性がある。特定のソースコードプロジェクトも、ユーザによって指定されてよく、または利用可能なソースコードプロジェクトが1つしかなければ、システムによってデフォルトで設定され得る。あるいは、ユーザは、例えばソースコードプロジェクトの以前のバージョンとソースコードプロジェクトの現行バージョンの間の翻訳の差異を取得するために、ソースコードプロジェクトの以前のバージョンを識別してもよい。システムの翻訳監視モジュールは、この入力に基づいて、翻訳リポジトリに対する変更を現在管理しているバージョン管理システムに問い合わせることにより、1つまたは複数の特定の時刻によって定義された時間間隔中の翻訳変更を識別することになる。バージョン管理システムが、リソースに対するあらゆる変更をその時間にわたって記録するように構成されているので、従来の技法を採用することにより、バージョン管理システムによって管理されているリソースにおける2つの異なる時刻の間の変更を取得することが実装され得ることを当業者なら容易に理解するであろう。したがって、特定のプロジェクトに関する翻訳リポジトリのテキストメッセージの翻訳変更は、例えばバージョン管理システムのログ記録された変更情報を用いて、第1の指定時刻における翻訳リポジトリのテキストメッセージの翻訳を第2の指定時刻における翻訳リポジトリのテキストメッセージの翻訳と比較することにより、監視することができる。さらに、翻訳リポジトリの前時刻と現在時刻の間の翻訳変更に関する情報が、翻訳者にとってたいていは有益であるので、翻訳監視モジュールは、ユーザから、単一の前時刻を指定する入力を受け入れるように構成されてよい。あるいは、翻訳監視モジュールは、2つの前時刻によって定義された時間間隔を指定する入力を受け入れるように構成されてもよい。ステップ406で、システムは、ソースコードプロジェクトのテキストメッセージの翻訳に関する翻訳変更リストを、1つまたは複数の特定のターゲット言語で生成する。例えば、生成される翻訳変更リストは、図3Bを参照しながら上述された形式のものでよい。前述のように、参照構築モジュールによって参照が構築された後にアプリケーションをレンダリングするとき、各テキストメッセージを他と区別して識別可能に保つために、変更された各テキストメッセージの翻訳変更リストに、新規のメッセージ識別子フィールドが形成されてよい。例えば、新規のメッセージ識別子は、文字Tで始まって一連の9つの数字が続くものなどの10個のキャラクタを有してよい。この新規のメッセージ識別子を構築する多種多様の方式が、例えばサーバ側のウェブアプリケーションといった参照構築アプリケーションをレンダリングするとき、これらのメッセージ識別子を後で識別するのを容易にするように用いられてよい。いくつかの実施態様では、翻訳者がプロジェクトの翻訳変更をチェックしてシステムを作動させようとするたびに、特定のソースコードプロジェクトに関する翻訳変更リストが生成されてよい。翻訳変更リストは、変更されたテキストメッセージに加えて、プロジェクトに用いられるすべてのテキストメッセージも含んでよく、指定された期間に同じままであるテキストメッセージは変更なしと表されて、リストにそのまま維持され得る。代替実施態様では、複数のソースコードプロジェクトに対して翻訳変更リストが生成されてよい。ステップ408で、システムは、翻訳変更リストに含まれる情報を用いて、ソースコードプロジェクトをレンダリングモジュール上で実行可能なアプリケーションに構築する。いくつかの実施態様では、ソースコードプロジェクトは、JSP、VisualBasicなどで書かれたものなどのウェブアプリケーションでよい。システムは、実行可能なアプリケーションを構築する際に、ソースコードプロジェクトを検索して、翻訳変更リストを調べることにより、プロジェクトのすべてのメッセージ識別子を、ターゲット言語の対応するテキストメッセージの現在の翻訳で置換することができる。変更されたテキストメッセージ、新規追加されたテキストメッセージ、または翻訳なし、のテキストメッセージに対して、メッセージ識別子、ソース言語のテキストメッセージ、ならびにターゲット言語の以前の翻訳および現在の翻訳が、これらのテキストメッセージが配置されたHTMLコードの中の特定の位置に組み込まれ得る。例えば開始というテキストメッセージについては、それが12111の形態のソースHTMLコードで用いられ、その中国語の翻訳が、指定された時間間隔中に変更されている場合には、この変更情報を保有することになるラベルに対して新規のカスタム属性が生成され得る。例えば、参照構築プロセスの後、ソースコードの上記の部分は、次のように変更されてよい。このようにして、参照構築プロセスの後に翻訳変更情報が維持される。代替実施態様では、ターゲット言語および任意の他の関連情報に関する識別子も、テキストメッセージを含むことができるウェブアプリケーションの様々なラベルに対してカスタム属性を用いることにより、構築されたアプリケーションの適切な位置に組み込まれ得る。さらに、類似の技法が、ソースコードプロジェクトの、例えばHTMLタグの間以外の他の位置にテキストメッセージの翻訳変更情報を組み込むために採用され得ることを当業者なら理解するであろう。ソースコードアプリケーションが、実行可能なアプリケーションに参照構築された後、システムは、ユーザが翻訳をチェックするようにユーザに提示するための実行可能なアプリケーションのレンダリングへ進むことができる。いくつかの実施態様では、システムは、特定のカスタム属性msgIDを有するものを見つけるために、動的に生成されたウェブページのHTMLタグをチェックすることによって翻訳変更情報を取得することができる。システムは、これらのテキストメッセージのまわりに追加のHTMLタグを挿入することにより、変更されたテキストメッセージを強調表示することができる。さらに、システムは、翻訳者に対して以前の翻訳を提示するために、例えば他のHTMLタグまたはJabaScriptコードを用いて、表示されたウェブページのテキストメッセージの近くに、表示されたテキストメッセージの近くの特別なアイコンをクリックして起動することができる、例えばドロップダウンボックス、ポップアップウィンドウ、他のユーザインターフェース要素といった他の高度な機能を組み込むことができる。このようにして、翻訳者は、変更されている表示されたウェブページのテキストメッセージを容易に見つけることができ、以前の翻訳をチェックすることができる。翻訳者は、実際のユーザ環境でこれらの翻訳を評論することもでき、したがって、各テキストメッセージの意味が適切に翻訳されていることを確認することができる。代替実施態様では、システムは、翻訳者が、アプリケーションのユーザ環境で改訂する必要がある表示されたテキストメッセージの翻訳に対して、例えば、そのような改訂をするための翻訳リポジトリまたは翻訳変更リストへの特定のインターフェースに行かなくても、さらなる変更を加えることを可能にする他の能力をさらに組み込むことができる。さらに、システムは、特定のプロジェクトまたは複数のプロジェクトの翻訳変更のサマリーを提示するレポート機能を含むようにも構成されてよい。本明細書に記載された主題および機能的動作の実施形態は、デジタル電子回路、実体的に具現化されたコンピュータソフトウェアまたはファームウェア、本明細書で開示された構造およびそれらの構造的等価物を含むハードウェア、あるいはそれらの1つまたは複数の組合せで実装されてよい。本明細書に記載された主題の実施形態は、データ処理装置によって実行するために、あるいはデータ処理装置の動作を制御するように、コンピュータの記憶媒体上に符号化された1つまたは複数のコンピュータプログラム、すなわちコンピュータプログラムの命令の1つまたは複数のモジュールとして実装されてよい。その代わりに、もしくはそれに加えて、プログラム命令は、人為的に生成された伝搬する信号、例えば、データ処理装置による実行のために適切な受信装置へ伝送するために、情報を符号化するように生成されたマシンで生成された電気信号、光信号、または電磁気信号上で符号化されてよい。コンピュータ記憶媒体は、機械可読記憶デバイス、機械可読記憶基板、ランダムアクセスメモリもしくはシリアルアクセスメモリのデバイス、またはそれらの1つまたは複数の組合せであり得る。データ処理装置という用語は、例として、プログラマブルプロセッサ、コンピュータ、または複数のプロセッサもしくはコンピュータを含めて、データ処理用のあらゆる種類の装置、デバイス、およびマシンを包含する。この装置は、例えばFPGA、またはASICといった専用論理回路を含み得る。この装置は、ハードウェアに加えて、例えばプロセッサのファームウェア、プロトコルのスタック、データベース管理システム、オペレーティングシステム、またはそれらの1つまたは複数の組合せを構成するコードといった、対象となるコンピュータプログラム用の実行環境を生成するコードも含み得る。コンピュータプログラムは、コンパイル型言語またはインタープリタ型言語、宣言型言語または手続き型言語を含めて任意の形式のプログラミング言語で記述されてよく、また、スタンドアロンプログラムとして、あるいはモジュール、コンポーネント、サブルーチン、またはコンピュータ環境で用いる適切な他のユニットとして含む、任意の形式に展開されてよい。コンピュータプログラムは、ファイルシステムの中のファイルに対応することができるが、これは必須ではない。プログラムは、他のプログラムまたはデータを保持するファイル、対象となるプログラム専用の単一ファイル、あるいは統合的な複数のファイルの一部分に記憶されてよい。コンピュータプログラムは、1つのコンピュータ上で、または1つのサイトに配置された、もしくは複数のサイトにわたって分散して通信網で相互に連結された複数のコンピュータ上で、実行されるように展開され得る。本明細書に記載されたプロセスおよび論理の流れは、入力データに対して動作して出力を生成することにより機能を実行する1つまたは複数のコンピュータプログラムを実行する1つまたは複数のプログラマブルプロセッサによって実行されてよい。これらのプロセスおよび論理の流れは、例えばFPGA、またはASICといった専用論理回路で実行されてもよく、装置もこれらで実装されてよい。コンピュータプログラムを実行するのに適切なプロセッサには、例として、汎用マイクロプロセッサおよび専用マイクロプロセッサの両方、ならびに任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサが含まれる。一般に、プロセッサは、命令およびデータを、読み取り専用メモリもしくはランダムアクセスメモリまたはその両方から受け取ることになる。コンピュータの必須要素は、命令を実行または実行するためのプロセッサならびに命令およびデータを記憶するための1つまたは複数の記憶デバイスである。一般に、コンピュータは、例えば磁気ディスク、光磁気ディスク、または光ディスクといったデータを記憶するための1つまたは複数の大容量記憶デバイスも含むことになり、あるいは、これらからデータを受け取り、もしくはこれらへデータを転送し、またはその両方を行うために、これらに対して動作可能に結合される。しかし、コンピュータにはそのようなデバイスがなくてもよい。その上、コンピュータは、別のデバイス、例えばほんの少数を挙げると、移動電話、携帯情報端末、移動式のオーディオプレーヤまたはビデオプレーヤ、ゲーム機、全地球測位システム受信機、または移動式記憶デバイスのフラッシュドライブの中に組み込まれてよい。コンピュータプログラムの命令およびデータを記憶するのに適切なコンピュータ可読媒体には、例として、例えばEPROM、EEPROM、およびフラッシュメモリデバイスといった半導体メモリデバイスと、例えば内蔵ハードディスク、取外し可能ディスクといった磁気ディスクと、光磁気ディスクと、CDROMおよびDVDROMディスクとを含んでいるすべての形態の不揮発性記憶装置、媒体およびメモリデバイスとが含まれる。プロセッサおよびメモリは、専用論理回路を追加することができ、あるいは専用論理回路に組み込まれ得る。ユーザとの対話をもたらすために、本明細書に記載された主題の実施形態は、ユーザに情報を表示するための例えばCRTまたはLCDのモニタといった表示デバイス、ならびにユーザがコンピュータに入力を与え得るキーボード、および例えばマウスまたはトラックボールといったポインティングデバイスを有するコンピュータ上で実装されてよい。ユーザとの対話をもたらすために、他の種類のデバイスも同様に用いられてよく、例えば、ユーザにもたらされるフィードバックは、例えば視覚フィードバック、聴覚フィードバック、触覚フィードバックといった任意の形式の感覚フィードバックでよく、また、ユーザからの入力は、音響、音声、または触覚の入力を含む任意の形式で受け取られ得る。加えて、コンピュータは、ユーザが使用しているデバイスとの間でドキュメントを送受することにより、例えばウェブブラウザから受け取った要求に応答してユーザのクライアントデバイス上のウェブブラウザにウェブページを送ることによって、ユーザと対話してよい。本明細書は多くの特定の実装形態の詳細を含むが、これらは、何らかの発明の範囲に対する限定または特許請求され得るものの限定としてではなく、特定発明の特定の実施形態に特有であり得る特徴の記載として解釈されるべきである。本明細書の個別の実施形態の文脈で記載された特定の特徴は、1つの実施形態の中で組み合わせて実装されてもよい。反対に、1つの実施形態の文脈で記載された様々な特徴は、複数の実施形態で、別個に、もしくは任意の適切なサブ組合せで実装されてもよい。その上、特徴は、いくつかの組合せで働くものとして上述され、初めにそのように特許請求されることさえあるが、特許請求される組合せからの1つまたは複数の特徴は、場合によってはその組合せから削除され得、特許請求される組合せは、部分組合せ、または部分組合せの変形形態を対象とし得る。同様に、動作は特定の順序で図面に示されているが、これは、望ましい結果を達成するために、そのような動作が、示される特定の順序または連続した順序で実行されること、あるいはすべての図示の動作が実行されることを必要とするものとして理解されるべきではない。いくつかの状況では、マルチタスクおよび並列処理が有利であり得る。その上、上述した実施形態における様々なシステム構成要素の分離は、すべての実施形態においてそのような分離を必要とするものとして理解されるべきでなく、記載されたプログラム構成要素およびシステムは、概して、単一のソフトウェア製品において互いに一体化されるか、または複数のソフトウェア製品にパッケージングされ得ることを理解されたい。主題の特定の実施形態が記載されてきた。他の実施形態は、添付の特許請求の範囲に含まれる。例えば、特許請求の範囲で列挙される作用は、異なる順序で実行されてもよく、やはり望ましい結果が達成される。一例として、添付図に示されたプロセスは、望ましい結果を達成するのに、示された特定の順番または順序を必ずしも必要とするものではない。特定の実装態様では、マルチタスクおよび並行処理が有利であり得る。