JP6420820B2 - 現地語化テキストの柔軟な複数化 - Google Patents

現地語化テキストの柔軟な複数化 Download PDF

Info

Publication number
JP6420820B2
JP6420820B2 JP2016505493A JP2016505493A JP6420820B2 JP 6420820 B2 JP6420820 B2 JP 6420820B2 JP 2016505493 A JP2016505493 A JP 2016505493A JP 2016505493 A JP2016505493 A JP 2016505493A JP 6420820 B2 JP6420820 B2 JP 6420820B2
Authority
JP
Japan
Prior art keywords
range
content
character string
text
string
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016505493A
Other languages
English (en)
Other versions
JP2016517978A5 (ja
JP2016517978A (ja
Inventor
ダウニング,ジョー
チタヤト,ノーム
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2016517978A publication Critical patent/JP2016517978A/ja
Publication of JP2016517978A5 publication Critical patent/JP2016517978A5/ja
Application granted granted Critical
Publication of JP6420820B2 publication Critical patent/JP6420820B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/454Multi-language systems; Localisation; Internationalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/55Rule-based translation
    • G06F40/56Natural language generation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Artificial Intelligence (AREA)
  • Machine Translation (AREA)
  • User Interface Of Digital Computer (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

[0001] コンピューターのオペレーティングシステム、アプリケーション、サービス、又は他のプログラムは、2以上の地理的領域で用いられるために開発されることがある。そのようなプログラムは、ユーザーインターフェイス(UI)上に表示されたテキストを通じてユーザーとやりとりを行うことがある。有益なユーザー体験を提供するために、プログラムは、ユーザーの自国語でやりとりを行うように構成されることができる。いくつかの例では、ユーザーへメッセージを提示するように準備しているプログラムは、メッセージの内容を指定する引数をUIプロシージャへ引き渡すだろう。プロシージャは、ユーザーの言語設定(language preference)、及び/又はプログラムが使用されている地域を認識して、適切な言語による当該指定された内容へのポインターを返す。こうしてプログラムは、ユーザーの言語によるメッセージを、ディスプレイモニター上のダイアログボックスなどの適切なUI要素へ導くことができる。
[0002] 上記のシナリオでは、ポインターは、UIプロシージャがアクセスできるリソースファイル内の位置を指すことがある。リソースファイルは、メッセージが正しい文法、綴り、及び句読点の打ち方で構築されるように、ユーザーの言語における専門家からの援助を受けて用意されることがある。
[0003] この開示の一実施態様は、コンピューターシステムのための現地語化リソースをエンコードした機械読み取り可能メモリを提供する。現地語化リソースは、区切られた文字列の配列を含み、各文字列は、コンピューターシステムによってコンテンツリミッターと比較される範囲を含む。範囲と関連付けられているのは、コンテンツリミッターがその範囲内にある場合にコンピューターシステムのユーザーインターフェイス上に提示されるテキストである。このフォーマットの現地語化リソースは、他の特徴の中でも、広範な言語にわたって複雑な複数化の規則を扱う能力を提供することができる。
[0004] この概要は、詳細な説明において更に後述される概念からの選抜を簡略な形で導入するために提供される。この概要は、請求された主題の主要な特徴又は本質的な特徴を特定することを意図したものではなく、また、請求された主題の有効範囲を限定するのに用いられることを意図したものでもない。更にまた、請求された主題は、この開示のいずれかの部分に述べられたいくつかの、又は全ての欠点を解決する具体例には限定されない。
図1は、この開示の一実施態様による例示的なコンピューターシステムと現地語化リソースの態様を示す。 図2は、この開示の一実施態様による現地語化リソースの配列の例示的な文字列の態様を示す。 図3は、この開示の一実施態様による現地語化リソースの配列の例示的な文字列の態様を示す。 図4は、この開示の一実施態様による現地語化リソースの配列の例示的な文字列の態様を示す。 図5は、この開示の一実施態様による現地語化リソースの配列の例示的な文字列の態様を示す。 図6は、この開示の一実施態様による、コンピューターシステム上の現地語化リソースから文法的に正確なテキストを取得するための例示的な方法を示す。 図7は、この開示の一実施態様による、コンピューターシステムのために現地語化リソースを用意するための例示的な方法を示す。 図8は、この開示の一実施態様によるコンピューターシステムのブロック図を示す。
[0010] これよりこの開示の態様が、例として、また上に列挙された例示の実施態様を参照して説明される。1又は複数の実施態様において実質的に同一であり得る構成要素、処理ステップ、及び他の要素は同等のものとして扱われ、最小限の繰り返しで記述される。しかしながら、同等のものとして扱われた要素は、幾分か異なることもあるということが留意されるだろう。更に、この開示に含まれる図面は模式的であり、一般にスケール通りには描かれていないということが留意されるだろう。むしろ、図に示された様々な描画スケール、アスペクト比、及び構成要素の数は、ある特徴又は関係性をより分かりやすくするために、意図的に歪められることがある。
[0011] 図1は、例示的なコンピューターシステム10の態様を示す。コンピューターシステム10は、あらゆる適切なタイプのコンピューターシステムを表すのであってよく、ビデオゲームシステム、デスクトップ、ラップトップ、又はタブレットコンピューターシステム、スマートフォン、メディアプレイヤー、又は他の携帯デバイス等を含むが、それらには限定されない。適切な論理及び命令記憶コンポーネントによって、コンピューターシステム10は、コード12を記憶し実行するように構成される。コードは、例えばコンピューターシステムの揮発性若しくは不揮発性メモリ内のソフトウェアとして実装されてよく、及び/又は、ネットワークを介してアクセスされてもよい。他の例示的な実施態様では、コードは、ファームウェアとして、又はコンピューターシステムのハードウェアの形で直接―例えば、いわゆる特定用途向け集積回路(ASIC)若しくはシステムオンチップの形で―インスタンス化されてよい。
[0012] 図1の実施態様では、コード12は、いくつかのコードブロック14に分割される。そのようないずれのブロックも、コンピューターシステム10のオペレーティングシステム(OS)、ビデオゲーム若しくはメディアプレイヤーなどのアプリケーション、又はサービス若しくは他のコンピュータープログラムに対応し得る。コードブロックのいずれか、いくつか、又は全ては、ユーザーへメッセージを―例えばコンピューターシステムのUIを通じて―提示するコードを含んでよい。したがって、図1のコンピューターシステムは、非限定的な例としてディスプレイモニター16や音声インターフェイス18などの、あるUIコンポーネントを含む。
[0013] 図1に例示されたシナリオでは、実行コードブロック14Aは、ユーザーへメッセージを提示するための命令に出会うかもしれない。1つの例示的シナリオでは、実行コードは、リモートサーバーからいくつかの音楽トラックをダウンロードしたメディアプレイヤーのアプリケーションであってよい。コードブロック14Aは、この事例では4つのトラックがダウンロードされたことの、報告を課されることがある。当然のことながら、ユーザーへ提示されるどんなメッセージも、ユーザーの自国語で、ユーザーの地理的領域に適合した綴りと言葉の選択を用いて構築されることが望まれる。その目的のために、言語に依存しないコードブロック14Aは、UIプロシージャ20へ呼び出しを発することができる。例えば、いくつかの実施態様では、この呼び出しは、UIプロシージャへ少なくとも2つの引数、即ちコンテンツインジケーター22とコンテンツリミッター24を渡すことができる。コンテンツインジケーターは、あるレベルの一般性をもってメッセージの内容を示す数値であってよい。上記の例では、「05」というコンテンツインジケーターは、トラックの数を特定することなく、1又は複数の音楽トラックがダウンロードされたことを示すことができる。コンテンツリミッターは、メッセージの内容を限定する更なる特定性を提供する。いくつかの実施態様では、コンテンツリミッターは、メッセージの中に記述されたアイテムの数又は量を特定することができる。例えば、「4」というコンテンツリミッターは、4がダウンロードされた音楽トラックの数であることを特定することができる。
[0014] コンテンツインジケーター22とコンテンツリミッター24に加えて、図1のUIプロシージャ20は、言語インジケーター26へのアクセスを有する。言語インジケーターは、コンピューターシステム10の環境28に格納されたグローバル変数であってよい。言語インジケーターは、コンピューターシステム10のユーザーの言語設定、及び/又はコンピューターシステムが使用されている地域を特定する。例えば、言語インジケーター「00」は、ユーザーの言語設定が、連合王国に適合した綴りと言葉の選択を有する英語であることを示すことができる。
[0015] 図1の実施態様では、UIプロシージャ20は、指定されたメッセージの内容と言語に対応するテキストを、現地語化リソース(localization resource)30から取得する。現地語化リソースは、ファイル、ビットストリーム、又はUIプロシージャがアクセス可能な他のオブジェクトであってよい。それは、コード12が提示しようとするどんなメッセージに対しても、ユーザーの言語及び/又は地域設定で正しく構築されたテキストを提供することができる。
[0016] 図1に示されるように、現地語化リソース30は、文字列34の配列32を含むことができる。本明細書において、用語「文字列」は、連続した1又は複数の文字を備えたデータタイプを意味する。「文字」は、英数字記号、句読点若しくは分音記号、又は空白などの、基本的な言語記号を表すデータタイプである。文字は、例えばアスキー又はユニコードであってよい。引き続き図1において、配列32の文字列は、言語に基づいて、2以上の系列36に整理されることができる。例えば、系列36Aは連合王国の英語で構築された文字列を含んでよく、系列36Bはロシア語で構築された文字列を含んでよい。各系列の文字列は、数字でインデックスを付され、同一の数字のインデックスを持ったものは、同一の内容を異なる言語で表現する。したがって、UIプロシージャ20は、言語インジケーター26によって指定された言語の文字列の系列を事前選択し、その事前選択された系列から、インデックスがコンテンツインジケーター22と一致する文字列を選択することができる。以降で説明されるように、選択された文字列からの所望の内容が、この後に続く処理を通じて明らかにされることができる。
[0017] 2つの系列の文字列―即ち言語―が図1に表されているが、現地語化リソース30は、任意の数の言語に拡張可能であり、1つの言語の文字列だけが含まれている場合でさえ、依然として有用である。現地語化リソースにおいて2以上の言語がサポートされている場合、対応する文字列の系列は、同じ数の文字列―例えば、連合王国の英語の系列による500個の文字列と、ロシア語の系列による500個の対応する文字列―を含むことができる。このフォーマットにおいて、文字列の配列32は、それがサポートする様々な言語にわたってギザギザ状でない(non-jagged)と言われる。
[0018] 図2は、現地語化リソース30の例示の文字列34の態様を示す。概略的に言うと、各文字列は、コンテンツリミッター24と比較されるべき少なくとも1つの範囲38を含む。それぞれの範囲と関連付けられているのは、コンテンツリミッター24が範囲内にある場合にコンピューターシステムのユーザーインターフェイス上に提示されるテキストセグメント40である。図2の例では、図示されている文字列は、3つの異なる範囲38と、それぞれの範囲に関連付けられた対応するテキストセグメント40を含む。ここで、文字列の異なるテキストセグメントは、アイテム「音楽トラック」を、各形式がそれに関連する数値範囲に適合した異なる複数化形式(pluralization form)で記述する。その上、各テキストセグメントにおいて用いられる動詞形は、ダウンロードされた音楽トラックの数と一致するように変形される。図2の例では、各テキストセグメント40は、主語と述語を有する複合句である。他の例では、文字列34のテキストセグメントは、各々1つだけの単語―例えば、複数化可能な名詞、又は主語の複数化の状態に応じて形が変化する動詞―を含んでよい。更に他の例では、文字列34のテキストセグメントは、複数の複合句又は完全な文を含んでよい。
[0019] 図2の例では、様々な範囲が、区切り記号として働く角括弧を用いて、文字列34の区切られた部分文字列として表されている。当然のことながら、任意の他の適切な区切り記号が代わりに用いられてよい。この例では、所与の範囲38を表す区切られた部分文字列は、その範囲に関連付けられたテキストセグメント40に隣接する。より具体的には、区切られた部分文字列は、関連するテキストセグメントの前に置かれる。他の例では、範囲は、それに関連するテキストセグメントの後に来てもよいし、又は文字列中のどこかに配置されてもよい。更に他の例では、例えば次のように、追加の区切り記号が用いられて、各範囲をそれに関連するテキストセグメントと一緒にグループ化してもよい。
[[0] music tracks][[1] music track][[2-] music tracks]
[0020] 図2の例では、範囲38A及び38Bは単一の値の範囲であるのに対して、範囲38Cはオープンエンドの範囲である。範囲38Cは、下限を含むが上限を含まず、コンテンツリミッター24が2以上に等しければその範囲に一致するだろうということを示している。他の例では、範囲は、上限を含むが下限を含まず―例えば[−5]―、コンテンツリミッターが5までの且つ5を含む任意の数であり得るということを示すのであってもよい。更に他の例では、範囲は、1又は複数の数字を表すためのワイルドカード文字を含んでよい。例えば、[1?]は10、11、…19を表すのであってよく、一方、[1*]は1で始まる任意の数を表し、[*1]は1で終わる任意の数を表してよい。
[0021] 図3は、同一の又は異なる現地語化リソース30の別の例示的な文字列34’の態様を示す。ここでもまた、各文字列は、コンテンツリミッター24と比較されるべき複数の範囲38と、対応する複数のテキストセグメント40とを含む。しかしながら、図3の実施態様では、所与の範囲を表す区切られた部分文字列は、関連するテキストセグメントを表すトークン42に隣接する。図示された具体例では、文字列34’は、範囲検出(rangefinder)部分文字列44と割当て(assignment)部分文字列46を含む。範囲検出部分文字列において、範囲38を表すそれぞれの区切られた部分文字列は、トークン42に隣接する。割当て部分文字列において、範囲検出部分文字列で用いられている全てのトークンが、今度はそれらが割り当てられているテキストセグメントに隣接して再度列挙される。図3では、割当て文字列のトークンは山括弧の中に登場するが、ここでも、任意の他の適切な区切り記号が代わりに用いられてよい。したがって、文字列34及び34’は、代替的な文字列の構築を表す。
[0022] 図2及び3に示されるような実施態様において、コンテンツリミッター24に対応する実際の数が、表示の目的のために、文字列から取得される適切なテキストセグメントの先頭に付されてよい、ということが理解される。したがって、ディスプレイは、例えば、「10個のアイテム(10 items)がダウンロードされた」又は「十個のアイテム(ten items)がダウンロードされた」等と書かれたテキストを受け取ることができる。しかしながら、他の実施態様では、コンテンツリミッターに対応する数が、取得されたテキストセグメントの中に既に存在しているように、トークンの概念は拡張されてよい。この文字列、例えば
[[0]{0} songs][[1]{0} song][[*]{0} song]
において、トークン{0}はコンテンツリミッターに対応する数を表す。この特徴の利点は、数をその範囲又は値に応じて異なる方法で表現することが望ましいかもしれないということである。例えば、UIインターフェイスが、「0個の楽曲(0 songs)があなたのクエリに一致する」ではなく「あなたのクエリに一致する楽曲はない(no songs)」と表示することが、より自然であるかもしれない。この特徴は、上記の例示の文字列に代替的な部分文字列
[[0] no song]
を含めることによって規定されることができる。
[0023] 現地語化されたコンテンツ(localized content)の複数化を対象とする実施態様の場合は、いくつかの言語が非常に複雑な複数化の規則を有することがある、ということが留意されるだろう。図4及び5は、ポピュラーなアラビア語の方言による単語「エピソード」を伴った文法的に正しい文を構築するのに用いられることのできる、文字列表現を示す。これらの例では、各数値範囲に関連するテキストセグメントは、単一の単語「エピソード」を、その範囲に対する文法的に正しい形式で記述する。図4は、図2で導入されたより冗長な構造を使用するのに対して、図5は、図3におけるような、範囲検出及び割当て部分文字列を用いて同じコンテンツを提示する。複雑な複数化の規則は、ロシア語など他の言語でも用いられる。
[0024] 本明細書で開示されるフォーマットの現地語化リソースは、0、1、及び>1に等しいコンテンツリミッターに対して異なる現地語化テキスト文字列を含むにすぎない方策よりも、著しい利点を提供することができる。例えば、そのようなアプローチは、アラビア語又はロシア語で文法的に正しい複数化を提供するにはネイティブ的に制限がありすぎるかもしれない。更に、たとえそれらを利用する言語について追加的な範囲を含めるようにアプローチを拡張したとしても、その結果得られる系列は、英語又はロマンス語の系列も含む配列に容易には組み込むことができない。そのような配列は、1つの言語系列に対して別の系列に対するよりも多くの文字列のエントリを有して、それが表す言語にわたってギザギザ状(jagged)となることであろう。
[0025] 数多くの他の実施例がこの開示の趣旨及び範囲内に依然としてあるため、前述の説明のいかなる態様も、限定的な意味に理解されるべきではない。概して、現地語化リソース30は、区切られた文字列の事実上任意の配列を含んでよく、文字列のそれぞれは、コンピューターシステムによってコンテンツリミッターと比較される範囲と、コンテンツリミッターがその範囲内にある場合にコンピューターシステムのユーザーインターフェイス上に提示される、前記範囲に関連付けられたテキストとを含む。図2及び3に示された文字列の構造に対する代替として、配列は、いわゆる「正規表現」に結合された範囲とテキストの要素を含んでよい。例えば、このトークン化された文字列
[[1]{0} song][[*2]{0} songz][[*3]{0} songz][[*4]{0} songz][[*]{0} songs]
に対する代替として、以下の正規表現が配列に格納されてよい。
[[^1$]{0} song][[^(2-4)]{0} songz][[/d]$]{0} songs]
[0026] 更に、この開示のいくつかの態様は、現地語化されたコンテンツの複数化を対象としているけれども、本明細書に記載されたアプローチは、時刻の表現などの、ソフトウェアの現地語化における他の問題に対しても適用可能である。例えば、ロシア語では、「часов」という用語は、英語のo’clockのように使われるが、例外がある。もし時間が数字1で終わるなら、代わりに「час」が用いられ、またもし時間が2、3、又は4で終わるなら、「часа」が用いられる。
[0027] 本明細書で説明される構成は、現地語化リソース30を伴う様々な方法を可能にする。したがって、いくつかのそのような方法が、引き続き上記の構成を参照して、例として、これより説明される。しかしながら、本明細書で説明される方法、及びこの開示の範囲内にある他の方法は、他の構成によっても可能とされてよい、ということが理解されるだろう。更に、本明細書で説明及び/又は例示される処理ステップのいくつかは、いくつかの実施態様では、この開示の範囲から逸脱することなく省略されてよい。同様に、処理ステップの指定されたシーケンスは、意図された結果を達成するために必ずしも必要とされなくてもよいが、例示及び説明の容易さのために提供される。例示されたアクション、機能、又は動作のうちの1又は複数は、用いられる特定の方策に応じて、繰り返して実施されてもよい。
[0028] 図6は、コンピューターシステム上の現地語化リソースから文法的に正確なテキストを取得するための例示的な方法48を示す。方法48の50において、取得されるべきテキストの内容を示すコンテンツインジケーターが、コンピューターシステムにおいて受け取られる。一実施態様では、コンテンツインジケーターは、コンピューターシステムの実行コードブロックからコンピューターシステムのUIプロシージャへ渡されてよい。52において、指定された内容に限定を課すコンテンツリミッターが受け取られる。ここでもまた、コンテンツリミッターは、コンピューターシステムの実行コードブロックからUIプロシージャへ渡されてよい。54において、言語インジケーターがUIプロシージャにおいて受け取られる。言語インジケーターは、コンピューターシステムのユーザーの言語設定、又はコンピューターシステムが使用されている場所を指定する。一実施態様では、言語インジケーターは、グローバル環境変数、又はUIプロシージャと共有される変数であってよい。
[0029] 方法48の56において、ユーザーの言語で構築された文字列の系列が、言語インジケーター26に基づいて現地語化リソース30から事前選択される。58において、コンテンツインジケーター22に対応する文字列34が、事前選択された系列から選択される。60において、選択された文字列が、コンテンツリミッター24を括弧の中に含む範囲を検出するために解析される。
[0030] 文字列は、いくつかの実施態様では、左から右へ解析されてよい。したがって、各文字列に含まれる様々な範囲38は、増大していく一般性(increasing generality)の順に、左から右へ整列されてよい。このようにして、コンテンツリミッターは、もし文字列中に存在するのであれば、より包括的な(例えば、オープンエンド又はワイルドカード)範囲に優先して、最も狭い適合範囲に一致するだろう。62において、検出された範囲に関連するテキストセグメント40が取得される。一実施態様では、実行コードブロックによって呼び出されたUIプロシージャは、テキストセグメントへのポインターを返すことができる。64において、テキストセグメントがコンピューターシステムのUI上に提示される。このアクションは、テキストセグメントを、コンピューターシステムのディスプレイモニターのダイアログボックスのようなUI要素上に表示することを含んでよい。他の実施態様では、テキストセグメントは、コンピューターシステムの音声合成エンジンへ出力され、あるいは任意の他の適切な方法で提示されてよい。
[0031] 図7は、コンピューターシステムのために現地語化リソースを用意するための例示的な方法66を示す。方法の68において、複数の範囲38が、区切られた部分文字列として文字列34に埋め込まれて格納される。範囲は、上述されたように数であってよい。70において、対応する複数のテキストセグメント40も、格納可能に文字列に埋め込まれる。各テキストセグメントは、コンピューターシステムにおいて受け取られたコンテンツリミッター24がそのテキストセグメントに関連する範囲内にある場合にコンピューターシステムのユーザーインターフェイス上に提示されることになるものである。
[0032] 一実施態様では、コンテンツリミッターは、文字列の複数のテキストセグメント中に共通して記述されたアイテムの数又は量を表すことができる。一実施態様では、区切られた文字列を格納することは、各形式がそれに関連する数値範囲に適合した異なる複数化形式でアイテムを記述する、異なるテキストセグメントを埋め込むことを含んでよい。72において、文字列は、現地語化リソース30の検索可能な配列32に組み立てられる。
[0033] 前述の説明から明らかなように、本明細書で説明される方法及び処理は、1又は複数のコンピューティングデバイスのコンピューティングシステムに結び付けることができる。そのような方法及び処理は、コンピューターアプリケーションプログラム若しくはサービス、アプリケーションプログラミングインターフェイス(API)、ライブラリ、及び/又は他のコンピュータープログラム製品として実装されることができる。
[0034] 図8は、本明細書で説明される方法及び処理をサポートするように構成されたコンピューターシステム10の更なる態様を示す高水準の図である。本明細書で上述されたように、コンピューターシステムは、論理マシン74及び命令記憶マシン76を含む。コンピューターシステム10は、オプションとして、表示サブシステム78、入力サブシステム80、通信サブシステム82、及び/又は図8には示されていない他のコンポーネントを含んでよい。
[0035] 論理マシン74は、命令を実行するように構成された1又は複数の物理デバイスを含む。例えば、論理マシンは、1又は複数のアプリケーション、サービス、プログラム、ルーチン、ライブラリ、オブジェクト、コンポーネント、データ構造、又は他の論理構造体のうちの一部である命令を実行するように構成されてよい。そのような命令は、タスクを実施し、データ型を実装し、1又は複数のコンポーネントの状態を変換し、技術的な効果を達成し、又は他の方法で所望の結果に到達するように実装されることができる。
[0036] 論理マシン74は、ソフトウェア命令を実行するように構成された1又は複数のプロセッサーを含んでよい。付加的に、又は代替として、論理マシンは、ハードウェア若しくはファームウェア命令を実行するように構成された1又は複数のハードウェア又はファームウェア論理マシンを含んでもよい。論理マシンのプロセッサーは、シングルコア又はマルチコアであってよく、その上で実行される命令は、順次処理、並列処理、及び/又は分散処理向けに構成されてよい。論理マシンの個々のコンポーネントは、オプションとして、リモートに配置され及び/又は連携処理向けに構成され得る2以上の別個のデバイスにわたって分散されてよい。論理マシンの態様は、クラウドコンピューティング配置に構成されたリモートでアクセス可能なネットワーク接続のコンピューティングデバイスによって、仮想化され実行されることができる。
[0037] 命令記憶マシン76は、本明細書で説明される方法及び処理を実現するための、論理マシン74によって実行可能な命令を保持するように構成された1又は複数の物理デバイスを含む。そのような方法及び処理が実現されると、命令記憶マシンの状態は、―例えば異なるデータを保持するように―変換されることができる。命令記憶マシンは、リムーバブル及び/又は内蔵デバイスを含んでよく、なかでも、光メモリ(例えば、CD、DVD、HD−DVD、Blu−Rayディスク等)、半導体メモリ(例えば、RAM、EPROM、EEPROM等)、及び/又は磁気メモリ(例えば、ハードディスクドライブ、フロッピー(登録商標)ディスクドライブ、テープドライブ、MRAM等)を含んでよい。命令記憶マシンは、揮発性、不揮発性、動的、静的、読み出し/書き込み、読み出し専用、ランダムアクセス、シーケンシャルアクセス、位置アドレス指定可能、ファイルアドレス指定可能、及び/又はコンテンツアドレス指定可能なデバイスを含んでよい。
[0038] 命令記憶マシン76は、1又は複数の物理デバイスを含むということが認識されるだろう。しかしながら、本明細書で説明される命令の態様は、代替的に、記憶媒体を介して記憶されるのではない通信媒体(例えば、電磁信号、光信号等)によって伝搬されてもよい。
[0039] 論理マシン74と命令記憶マシン76の態様は、1又は複数のハードウェア論理コンポーネントに一緒に統合されてもよい。そのようなハードウェア論理コンポーネントは、例えば、フィールドプログラマブルゲートアレイ(FPGA)、プログラム及びアプリケーション特定集積回路(PASIC/ASIC)、プログラム及びアプリケーション特定標準製品(PSSP/ASSP)、システムオンチップ(SOC)、及び複合プログラマブル論理デバイス(CPLD)を含んでよい。
[0040] 「プログラム」又は「エンジン」という用語は、特定の機能を実施するように具現化されたコンピューターシステム10の態様を記載するのに用いられることができる。いくつかのケースでは、プログラム又はエンジンは、命令記憶マシン76により保持された命令を実行する論理マシン74を介してインスタンス化されることができる。同一のアプリケーション、サービス、コードブロック、オブジェクト、ライブラリ、ルーチン、API、関数等から、異なるプログラム又はエンジンがインスタンス化されてよいということが理解されるだろう。同様に、異なるアプリケーション、サービス、コードブロック、オブジェクト、ルーチン、API、関数等によって、同一のプログラム及び/又はエンジンがインスタンス化されてもよい。「プログラム」又は「エンジン」という用語は、実行可能ファイル、データファイル、ライブラリ、ドライバー、スクリプト、データベースレコード等の個々又は集団を包含することができる。
[0041] 本明細書で用いられる際、「サービス」は、複数のユーザーセッションにわたって実行可能なアプリケーションプログラムであるということが認識されるだろう。サービスは、1又は複数のシステムコンポーネント、プログラム、及び/又は他のサービスに利用可能であってよい。いくつかの実施例では、サービスは、1又は複数のサーバーコンピューティングデバイス上で動作することができる。
[0042] 含まれる場合、表示サブシステム78は、命令記憶マシン76によって保持されるデータの視覚的表現を提示するのに用いられることができる。この視覚的表現は、グラフィカルユーザーインターフェイス(GUI)の形をとることができる。本明細書で説明される方法及び処理が記憶マシンによって保持されたデータを変化させ、その結果記憶マシンの状態を変換する時、表示サブシステムの状態も同様に、元となるデータにおける変化を視覚的に表現するように変換されることができる。表示サブシステムは、事実上任意の種類の技術を利用する1又は複数のディスプレイデバイスを含んでよい。そのようなディスプレイデバイスは、共通の筐体内で論理マシン74及び/又は命令記憶マシン76と一体化されてよく、あるいは、そのようなディスプレイデバイスは、周辺機器のディスプレイデバイスであってもよい。
[0043] 含まれる場合、入力サブシステム80は、キーボード、マウス、タッチスクリーン、若しくはゲームコントローラーなどの1又は複数のユーザー入力デバイスを含み、又はそれらとインターフェイスすることができる。いくつかの実施態様では、入力サブシステムは、選択されたナチュラルユーザー入力(NUI)コンポーネントを含み、又はそれとインターフェイスすることができる。そのようなコンポーネントは、一体型又は周辺機器型であってよく、入力動作の伝達及び/又は処理は、オンボード又はオフボードで扱われてよい。例示のNUIコンポーネントは、音声認識のためのマイクロフォン、マシンビジョン及び/又はジェスチャ認識のための赤外カメラ、カラーカメラ、ステレオカメラ、及び/又は深度カメラ、モーション検出及び/又は意図認識のためのヘッドトラッカー、アイトラッカー、加速度計、及び/又はジャイロスコープ、並びに、脳の活動を調べるための電界検知コンポーネントを含んでよい。
[0044] 含まれる場合、通信サブシステム82は、コンピューターシステム10を1又は複数の他のコンピューティングデバイスと通信可能に結合するように構成されることができる。通信サブシステムは、1又は複数の異なる通信プロトコルと互換性のある有線及び/又は無線通信デバイスを含むことができる。非限定的な例として、通信サブシステムは、無線の電話ネットワーク、又は、有線若しくは無線のローカル若しくはワイドエリアネットワークを介した通信のために構成されることができる。いくつかの実施態様では、通信サブシステムは、コンピューターシステム10がインターネットなどのネットワークを介してメッセージを他のデバイスへ送る、及び/又は他のデバイスから受け取ることを可能にすることができる。
[0045] 本明細書で説明された構成及び/又は手法は本質的に例示的なものであり、数多くのバリエーションが可能であるためこれらの具体的な実施態様又は例は限定的な意味に解されてはならない、ということが理解されるだろう。本明細書で説明された具体的なルーチン又は方法は、多くの処理戦略のうちの1又は複数を代表することができる。それ故に、例示及び/又は説明された様々な動作は、例示及び/又は説明された順序で、他の順序で、並列で、又は省略されて、実施されることができる。同様に、上述された処理の順序は変更されることができる。
[0046] 本開示の主題は、本明細書で開示された様々な処理、システム及び構成、並びに、他の特徴、機能、動作、及び/又は特性のみならず、それらのいずれか及び全ての均等物の、あらゆる新規且つ非自明なコンビネーション及びサブコンビネーションを含んでいる。

Claims (8)

  1. コンピューターシステム上における、現地語化リソースから文法的に正確なテキストを取得するための方法であって、
    取得されるべきテキストの内容を指定するコンテンツインジケーターを受け取るステップと、
    前記内容に限定を課すコンテンツリミッターを受け取るステップと、
    前記現地語化リソースから前記コンテンツインジケーターに対応する文字列を選択するステップであって、前記現地語化リソースは、複数の文字列を含み、各文字列は、連続した1又は複数の文字を含み、各文字列は、
    前記コンテンツインジケーターに関連付けられた、前記コンテンツリミッターと比較される第1範囲であって、前記文字列のうちの第1部分文字列として区切られる、第1範囲と、
    前記第1範囲に関連付けられた、前記コンテンツリミッターが前記第1範囲内にある場合に前記コンピューターシステムのユーザーインターフェイス上に提示される第1テキストセグメントであって、前記第1部分文字列は、前記第1テキストセグメントを指定する第1トークンに隣接する、第1テキストセグメントと、
    前記コンテンツインジケーターに関連付けられた、前記コンテンツリミッターと比較される第2範囲であって、前記文字列のうちの第2部分文字列として区切られる、第2範囲と、
    前記第2範囲に関連付けられた、前記コンテンツリミッターが前記第2範囲内にある場合に前記ユーザーインターフェイス上に提示される第2テキストセグメントであって、前記第2部分文字列は、前記第2テキストセグメントを指定する第2トークンに隣接する、第2テキストセグメントと、
    を含む、ステップと、
    前記選択された文字列を解析して、前記第1及び第2範囲のどちらが前記コンテンツリミッターと一致するかを決定するステップと、
    前記文字列から、前記決定された範囲に関連するテキストセグメントを取得するステップと、
    を含む方法。
  2. 前記コンテンツリミッターは、前記テキストの中に記述されたアイテムの数又は量を特定し、前記第1及び第2範囲の各々は、数値範囲である、請求項1に記載の方法。
  3. 前記第1及び第2範囲は、前記コンテンツリミッターと比較される所与の文字列の複数の範囲のうちの1つであり、前記第1及び第2テキストセグメントは、前記ユーザーインターフェイス上に提示される関連する複数のテキストセグメントのうちの1つであり、前記所与の文字列の異なるテキストセグメントは、アイテムを、それぞれが関連する数値範囲に適合した異なる複数化形式で記述する、請求項2に記載の方法。
  4. 前記第1範囲は、上限及び/又は下限を含む、請求項1に記載の方法。
  5. 前記第1範囲は、1又は複数の数字を表すワイルドカード文字を含む、請求項1に記載の方法。
  6. 前記第1及び第2部分文字列は、前記第1及び第2テキストセグメントの前に置かれる、請求項に記載の方法。
  7. 前記文字列は、範囲検出部分文字列と割当て部分文字列を含み、前記第1トークンは、前記範囲検出部分文字列に含まれる前記第1部分文字列と前記割当て部分文字列に含まれる前記第1テキストセグメントに隣接し、前記第2トークンは、前記範囲検出部分文字列に含まれる前記第2部分文字列と前記割当て部分文字列に含まれる前記第2テキストセグメントに隣接する、請求項に記載の方法。
  8. 前記複数の文字列は、配列に組み込まれ、
    前記コンピューターシステムのユーザーの言語設定又は前記コンピューターシステムが使用されている場所を指定する言語インジケーターを受け取るステップと、
    前記言語インジケーターに基づいて前記配列の文字列の系列を事前選択するステップと、
    を更に含む、請求項1に記載の方法。
JP2016505493A 2013-03-20 2014-03-18 現地語化テキストの柔軟な複数化 Active JP6420820B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/847,718 US9766905B2 (en) 2013-03-20 2013-03-20 Flexible pluralization of localized text
US13/847,718 2013-03-20
PCT/US2014/031072 WO2014153353A2 (en) 2013-03-20 2014-03-18 Flexible pluralization of localized text

Publications (3)

Publication Number Publication Date
JP2016517978A JP2016517978A (ja) 2016-06-20
JP2016517978A5 JP2016517978A5 (ja) 2017-06-08
JP6420820B2 true JP6420820B2 (ja) 2018-11-07

Family

ID=50483609

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016505493A Active JP6420820B2 (ja) 2013-03-20 2014-03-18 現地語化テキストの柔軟な複数化

Country Status (6)

Country Link
US (1) US9766905B2 (ja)
EP (1) EP2976722A2 (ja)
JP (1) JP6420820B2 (ja)
KR (1) KR102180915B1 (ja)
CN (1) CN105164670B (ja)
WO (1) WO2014153353A2 (ja)

Family Cites Families (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5884248A (en) * 1996-04-10 1999-03-16 Casio Computer Co., Ltd. Build message communication system utilizing data tables containing message defining data and corresponding codes
US6513002B1 (en) * 1998-02-11 2003-01-28 International Business Machines Corporation Rule-based number formatter
US7120862B1 (en) * 1998-12-01 2006-10-10 Lucent Technologies Inc. Method and apparatus for persistent access to Web resources using variable time-stamps
US6492995B1 (en) * 1999-04-26 2002-12-10 International Business Machines Corporation Method and system for enabling localization support on web applications
US7089494B1 (en) * 2000-07-07 2006-08-08 American Megatrends, Inc. Data structure, methods, and computer program products for storing text data strings used to display text information on a display terminal
US20040015309A1 (en) * 2000-12-04 2004-01-22 Swisher Douglas S. Systems and methods for OTDR tracing and mapping
US8812319B2 (en) * 2001-01-31 2014-08-19 Ibiometrics, Inc. Dynamic pass phrase security system (DPSS)
US6964014B1 (en) * 2001-02-15 2005-11-08 Networks Associates Technology, Inc. Method and system for localizing Web pages
US7366979B2 (en) * 2001-03-09 2008-04-29 Copernicus Investments, Llc Method and apparatus for annotating a document
US20020143523A1 (en) * 2001-03-30 2002-10-03 Lakshmi Balaji System and method for providing a file in multiple languages
TW548562B (en) * 2002-01-16 2003-08-21 Springsoft Inc Method and system for drawing layout of process testing components
US7542958B1 (en) * 2002-09-13 2009-06-02 Xsb, Inc. Methods for determining the similarity of content and structuring unstructured content from heterogeneous sources
US7315902B2 (en) * 2002-12-19 2008-01-01 International Business Machines Corporation Compression and abbreviation for fixed length messaging
US7885963B2 (en) 2003-03-24 2011-02-08 Microsoft Corporation Free text and attribute searching of electronic program guide (EPG) data
US7356612B2 (en) * 2003-06-18 2008-04-08 Honeywell International Inc. Method and apparatus for storing and retrieving data related to paths of a multi-path, multi-tier network
US20040267527A1 (en) 2003-06-25 2004-12-30 International Business Machines Corporation Voice-to-text reduction for real time IM/chat/SMS
US8050272B2 (en) * 2004-06-29 2011-11-01 Damaka, Inc. System and method for concurrent sessions in a peer-to-peer hybrid communications network
EP1790130B1 (en) * 2004-09-15 2019-02-27 Cisco Technology, Inc. Agile information technology infrastructure management system
US7983895B2 (en) * 2004-11-09 2011-07-19 Sony Online Entertainment Llc System and method for generating grammatically correct text strings
US7584194B2 (en) * 2004-11-22 2009-09-01 Truveo, Inc. Method and apparatus for an application crawler
US7412389B2 (en) * 2005-03-02 2008-08-12 Yang George L Document animation system
US8246453B2 (en) 2005-04-28 2012-08-21 Wms Gaming Inc. Wagering game device having ubiquitous character set
US8060357B2 (en) * 2006-01-27 2011-11-15 Xerox Corporation Linguistic user interface
US7840601B2 (en) * 2006-05-12 2010-11-23 Sap Ag Editable table modification
EP1870804A1 (en) * 2006-06-22 2007-12-26 Microsoft Corporation Dynamic software localization
US7856415B2 (en) * 2006-09-01 2010-12-21 Dell Products L.P. System and method for mapping events into a data structure
US8966235B2 (en) * 2006-10-24 2015-02-24 Kent E. Dicks System for remote provisioning of electronic devices by overlaying an initial image with an updated image
WO2008111048A2 (en) * 2007-03-09 2008-09-18 Ghost, Inc. System and method for browser within a web site and proxy server
US8290775B2 (en) * 2007-06-29 2012-10-16 Microsoft Corporation Pronunciation correction of text-to-speech systems between different spoken languages
US7752222B1 (en) * 2007-07-20 2010-07-06 Google Inc. Finding text on a web page
US8838659B2 (en) * 2007-10-04 2014-09-16 Amazon Technologies, Inc. Enhanced knowledge repository
US8762153B2 (en) 2008-08-18 2014-06-24 At&T Intellectual Property I, L.P. System and method for improving name dialer performance
CN102939791B (zh) * 2010-05-17 2015-09-23 塔塔咨询服务有限公司 用于具有听觉、言语和视觉障碍的人的手持式通信辅助器
US20120035905A1 (en) * 2010-08-09 2012-02-09 Xerox Corporation System and method for handling multiple languages in text
US8606564B2 (en) * 2010-11-01 2013-12-10 Yahoo! Inc. Extracting rich temporal context for business entities and events
US8862455B2 (en) 2011-05-09 2014-10-14 Microsoft Corporation Creating and implementing language-dependent string pluralizations
US8856004B2 (en) 2011-05-13 2014-10-07 Nuance Communications, Inc. Text processing using natural language understanding
US8400453B2 (en) * 2011-06-30 2013-03-19 Google Inc. Rendering a text image following a line
US9037450B2 (en) * 2012-12-14 2015-05-19 Microsoft Technology Licensing, Llc Text overlay techniques in realtime translation
US9223853B2 (en) * 2012-12-19 2015-12-29 Microsoft Technology Licensing, Llc Query expansion using add-on terms with assigned classifications
US9298703B2 (en) * 2013-02-08 2016-03-29 Machine Zone, Inc. Systems and methods for incentivizing user feedback for translation processing
US9276855B1 (en) * 2013-07-16 2016-03-01 Google Inc. Systems and methods for providing navigation filters
US9256651B1 (en) * 2013-09-24 2016-02-09 Emc Corporation Inheritance of properties files with locale chain support
US10963651B2 (en) * 2015-06-05 2021-03-30 International Business Machines Corporation Reformatting of context sensitive data

Also Published As

Publication number Publication date
KR102180915B1 (ko) 2020-11-19
KR20150135400A (ko) 2015-12-02
JP2016517978A (ja) 2016-06-20
WO2014153353A3 (en) 2015-02-26
CN105164670B (zh) 2018-01-02
US9766905B2 (en) 2017-09-19
US20140289616A1 (en) 2014-09-25
EP2976722A2 (en) 2016-01-27
CN105164670A (zh) 2015-12-16
WO2014153353A2 (en) 2014-09-25

Similar Documents

Publication Publication Date Title
US10169471B2 (en) Generating and executing query language statements from natural language
TWI510965B (zh) 輸入方法編輯器整合
US10318630B1 (en) Analysis of large bodies of textual data
US9772861B2 (en) Accessing operating system elements via a tag cloud
US10860631B1 (en) Searching and scoring using phrases and/or multiple words
JP2019164824A (ja) リソースに対するアクションへのインデックス付け
WO2014134990A1 (en) Method, device and computer-readable storage medium for closure testing
US10698971B2 (en) Method and apparatus for storing access log based on keyword
JP6568605B2 (ja) 大規模ソースコードリポジトリにおける自動インポートおよびディペンデンシー
JP6420820B2 (ja) 現地語化テキストの柔軟な複数化
WO2021120878A1 (zh) 基于书籍图谱的书籍显示方法、计算设备及存储介质
JP5285491B2 (ja) 情報検索システム、方法及びプログラム、索引作成システム、方法及びプログラム、
US10445320B2 (en) Document search apparatus, non-transitory computer readable medium, and document search method
US10649739B2 (en) Facilitating application development
US10620922B2 (en) Compiler platform for test method
KR102667466B1 (ko) 이미지 연상 기법을 이용한 영어 독해 강의 콘텐츠 제공 방법 및 장치
TW201435825A (zh) 電子裝置、學習方法及其電腦程式產品
EP4328764A1 (en) Artificial intelligence-based system and method for improving speed and quality of work on literature reviews
JP5417359B2 (ja) 文書評価支援システム、及び文書評価支援方法
WO2024031983A1 (zh) 一种代码管理方法及相关设备
JP2017097451A (ja) 情報処理方法、情報処理プログラムおよび情報処理装置
WO2024123421A1 (en) Contextual-based knowledge entity suggestions
Ramesh Context Aware Conversational Agent for Flight Search
US20160314780A1 (en) Increasing user interaction performance with multi-voice text-to-speech generation
JP2007172539A (ja) 単語検索装置及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170315

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170418

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180410

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180914

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181012

R150 Certificate of patent or registration of utility model

Ref document number: 6420820

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250