JPH0619720A - 周辺装置のための言語識別方法 - Google Patents

周辺装置のための言語識別方法

Info

Publication number
JPH0619720A
JPH0619720A JP985693A JP985693A JPH0619720A JP H0619720 A JPH0619720 A JP H0619720A JP 985693 A JP985693 A JP 985693A JP 985693 A JP985693 A JP 985693A JP H0619720 A JPH0619720 A JP H0619720A
Authority
JP
Japan
Prior art keywords
language
value
key
tally
approval
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.)
Granted
Application number
JP985693A
Other languages
English (en)
Other versions
JP3485588B2 (ja
Inventor
Sean E Walton
シーン・エリン・ウォルトン
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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JPH0619720A publication Critical patent/JPH0619720A/ja
Application granted granted Critical
Publication of JP3485588B2 publication Critical patent/JP3485588B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1206Improving or facilitating administration, e.g. print management resulting in increased flexibility in input data format or job format or job type
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1248Job translation or job parsing, e.g. page banding by printer language recognition, e.g. PDL, PCL, PDF
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1286Remote printer device, e.g. being remote from client or server via local network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/263Language identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/0005Accepting output data; Preparing data for the controlling system
    • G06K2215/0014Transforming the printer input data into internal codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Devices For Executing Special Programs (AREA)
  • Machine Translation (AREA)
  • Document Processing Apparatus (AREA)

Abstract

(57)【要約】 【目的】 本発明の目的は、複数の入力言語に応答する
テ゛ータ処理システムにおいて、入力テ゛ータ・ストリームの文脈解析及び
構文解析の両方を用い、将来の言語を支援することの可
能な拡張性のある、周辺装置に対する改良された言語識
別方法を提供することにある。 【構成】 テ゛ータ処理システムは、複数の入力言語に応答し、
予測される言語毎に、入力テ゛ータ・フ゛ロックの構文を解析し、
承認キー(ある言語の存在を表す)及び否認キー(その言語
の存在を否認する)を識別する。この承認キー及び否認キー
と、構文及び文脈におけるキーの重要度を表すスキュー値を組
み合わせ、承認タリー及び否認タリーを求める。これらのタリー
の値に別の構文特性を加味し、不明確でない値を表示
し、さらに、値の大きい方のタリーから導き出した値を表
示する。そして予測言語毎のこれら表示値に基づいて、
受信言語の同一性を決定する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、データ処理システムに
おける受信言語の識別に関するものであり、とりわけ、
構文解析と文脈解析の両方を用いた言語識別システムに
関するものである。
【0002】
【従来の技術及び発明が解決しようとする課題】最近の
データ処理ネットワークは、各種コンピュータの通信ネ
ットワークとの相互接続を可能にする。プリンタ、プロ
ッタ等の周辺装置も、通信ネットワークに接続されてお
り、接続されたコンピュータに対し資源を供給する。こ
れらの周辺装置は、各種コンピュータから受信したコマ
ンドを判定し応答しなければならない。接続されている
全てのコンピュータが、同じ周辺制御言語を用いている
限り、周辺装置は1つの言語を認識しこれに応答するだ
けで済む。しかし、コンピュータが異なる周辺制御言語
を用いる場合、周辺装置は、入力言語の識別子を認識
し、識別した言語によるコマンドに応答できなければな
らない。
【0003】いくつかの周辺制御言語は、言語を識別す
る初期識別コード・シーケンスを用いている。ネットワ
ークに取り付けられた各種コンピュータが、言語の構文
上のコード化要件に従う限り、言語認識を行うことが可
能である。ただし、こうしたコード・シーケンスが、ネ
ットワークに接続される可能性のある全てのコンピュー
タにおいて例外なく使用可能であるという保証はない。
周辺装置の製造メーカーは、不測の事態、すなわち、特
定の初期識別コード・シーケンスが、別の言語のデータ
・ストリームに生じる可能性があり、周辺装置による間
違った言語スイッチを引き起こすという不測の事態を前
もって考慮しておかなければならない。最近、精巧な周
辺装置では、ダウンロードしたジョブを使用して言語の
識別を行えるようにするために、コードの受信ブロック
の文脈を解析する、「文脈スイッチング」・システムが
用いられている。こうした文脈スイッチャの1つに、QM
S International(One Magnum Pass,Mobile,Alabama,366
18)の製品QMS ESPがある。該製品QMS ESPの詳細は公開
されていないが、その動作を外的解析からそれとなく明
らかにすることが可能である。QMS ESPは、特定の制御
言語を示す特定のストリング、記号、及び、制御文字
(今後まとめてキーと呼ぶ)を探索するように思われ
る。いくつかのキー・ワードは、特定の言語の存在を表
す特別の重要性を有している。さらに、キーの発生数に
は、意味が与えられている。
【0004】初期コード・シーケンスの統計的累積に基
づき、QMS ESPは、入力言語の判定を行う。特定の環境
下で、QMS ESPは、言語識別を行えないことが明らかに
なった。こうした定期的言語選択エラーは、2つ以上の
言語に特定キーが発生するため、また、入力データ・ス
トリームの非文脈解析はある時間期間にわたると誤った
言語識別を引き起こすことになるという事実によって発
生するものと推測される。
【0005】従って、本発明の目的は、周辺装置に対す
る改良された言語識別システムを提供することにある。
【0006】本発明のもう1つの目的は、入力データ・
ストリームの文脈解析及び構文解析の両方を用いた言語
識別システムを提供することにある。
【0007】本発明のさらにもう1つの目的は、将来の
言語を支援することの可能な拡張性のある言語識別シス
テムを提供することにある。
【0008】
【課題を解決するための手段】データ処理システムは、
各言語が予め規定された各々の構文に従っている、複数
の入力言語に応答する。入力データにおける定義された
部分(「承認」キー)の存在が、ある言語の存在に対す
る承認を表し、別の定義された部分(「否認」キー)の
存在が、その言語の存在に対する否認を表す。このシス
テムは下記の入力言語識別方法を実行する。予測される
言語毎に、データ・ブロックにおける承認キー及び否認
キーを識別するために、入力データ・ブロックの構文を
解析する。この解析に応じて、予測言語毎に、承認タリ
ー及び否認タリーを与える。各タリーはキー項目の総和
であり、その各キー項目は識別したキー・カウントにス
キューを乗じたものから構成され、スキュー値は前記デ
ータ・ブロックの構文及び文脈におけるキーの重要度を
表し、承認タリーは承認キー項目の和であり、否認タリ
ーは否認キー項目の和である。この承認タリー及び否認
タリーを比較して、それらの値が極めて接近していて、
不明確な表示にならないか否かを判定する。さらに、デ
ータ・ブロックの別の構文特性に基づいて不明確さを解
消し、複数のタリーの1つに基づいてある値を表示す
る。あるいは、タリー間に不明確さがない場合には、値
の大きい方のタリーから導き出した値を表示する。そし
て予測言語毎の表示値に基づいて、受信言語の同一性を
決定する。
【0009】
【実施例】図1を参照すると、パーソナル・コンピュー
タ(PC)10、12、及び、14が、ローカル・エリア・
ネットワーク(LAN)16を介して相互接続されている。
プリンタ18もまた、LAN16に接続されており、PC1
0、12、及び、14のそれぞれにプリント・サービス
を提供する。以下では、プリンタ18に関連して、本発
明の解説を行うことになるが、接続されたコンピュータ
に対してサービスを行う他のデータ処理システムにも、
本発明を利用することができるのは明らかである。こう
した他の周辺装置の例には、プロッタ、ファクシミリ装
置等がある。
【0010】LAN16に接続されたコンピュータは、さ
まざまなプリンタ制御言語を利用することができる。本
発明の開示のため、PC10は、PCL(プリンタ制御言
語)として知られるプリンタ言語を利用し、PC12は、
プリンタ言語PostScriptを利用し、PC14は、他のプリ
ンタ制御言語を利用するものと仮定する。本発明によ
り、プリンタ18が、PC10、12、及び、14の全て
またはいずれかからの入力コマンド/データ・ストリー
ムの文脈を自動的に解析し、受信言語の識別を行い、さ
らに、それに従って、プリントコマンドを実行すること
が可能になる。
【0011】プリンタ18には、各々がバス26を介し
てプリント・エンジン28に接続している、中央演算処
理装置(CPU)20、入力/出力(I/O)モジュール2
2、及び、ランダム・アクセス・メモリ・モジュール(R
AM)24が含まれている。RAM24の一部は、30で示す
ように、分割され、そこには、RAM24の言語識別手続
きに利用される部分が含まれる。ここには、PC10、1
2、及び、14の1つから受信するデータ・ブロックを
記憶するための記憶領域32が含まれている。記憶領域
32は、256バイトのデータ・ブロックを保持するの
に十分な大きさを備えていることが望ましい。このブロ
ック・サイズは、要求処理時間をむやみに延長すること
なく、入力言語の識別を可能にするのに十分であること
が知られている。
【0012】言語識別手続きには、各々が、特定の予測
プリンタ言語の解析に割り当てられた複数のボーター(V
oter)・モジュール34、36、及び、38が含まれ
る。例えば、ボーター・モジュール34は、PCL言語の
解析に割り当てられ、ボーター36は、PostScript言語
の解析に割り当てられ、等等。採決モジュール40は、
ボーター・モジュール34、36、及び、38それぞれ
からの出力を受信し、それらボーター・モジュールの入
力に基づいて、受信した言語の最も可能性の高い同一性
を採決する。採決モジュール40は、さらに、採決した
言語の翻訳と実行を可能にする構文解読ソフトウェアに
アクセスするように、CPU20に対して命令する。採
決機能及びボーター機能を異なるモジュールに組み込め
ば、新しい言語毎に、ボーター・モジュールを追加する
ことによって、容易に、追加言語に適応することが可能
になる。
【0013】図2を参照すると、典型的なボーター・モ
ジュールとその主コンポーネントが示されている。サブ
ルーチン42は構文解析器であり、各ボーターに割り当
てられた言語の構造の定義が与えられ、規則と記述文を
含む。この定義を利用することにより、構文解析器42
は、入力データ・ブロックの構文解析を行い、データ・
ブロックの言語の同一性の判定において特別に意味のあ
る部分を識別することが可能になる。この意味のある部
分を、今後キーと呼ぶ。このキーには正と負の両方のキ
ーがあり、正のキーの存在はその言語に対する承認を示
し、負のキーの存在はその言語に対する否認を示してい
る。
【0014】キーのタイプ(カテゴリ)毎に1つのカウ
ンタがあり、各ボーターには複数のキー・カウンタが含
まれる。さらに、各ボーター・モジュールには、各キー
のカウントが書き込まれる時、各キーに対する重み値を
割り当てる重みテーブル48が含まれている。重みテー
ブル48に書き込まれる重み値は、識別したキーが、そ
の言語の存在を示しているか、あるいは、構文の言語に
許容されない未知の文字または別のグループの文字を示
しているかによって、正または負になる。ボート値レジ
スタ46には、入力データ・ストリーム中で現在までに
検出されている正と負の重みキーの総和に等しい現在の
合計実行値が保存されていて、割り当てられた重み値
は、このボート値レジスタ46中で合計される。
【0015】文脈テーブル50は、検出された各キー
に、受信データ・ブロックにおけるキー及びキー構造に
依存した異なる値(「スキュー」)を割り当てるために
用いる。文脈テーブル50には、キー・タイプ毎の初期
スキュー値が含まれていて、この初期スキュー値はスキ
ュー修飾子に(その場合に応じて)乗算または除算を施
したもので、データ・ブロックにおけるキー構造に依存
したスキュー値を得るための値である。スキュー値(プ
ラスとマイナスの両方とも)は、次に、正と負のスキュ
ー値を別々に累積した1対のボート・タリー・レジスタ
52に入力される。従って、「承認」タリー・レジスタ
は、前記計算の結果生じる全ての正のスキュー値を累積
し、一方、「否認」タリー・レジスタは、負のスキュー
値を累積する。
【0016】次に、図3及び4を参照すると、PCLとPos
tScriptの両方に関する構文が、論理図の形で示されて
いる。各論理図は、特定の言語を走査するように割り当
てられたボーター・モジュール中の、それぞれの構文解
析サブルーチン42における論理文として具現化され
る。従って、ボーター・モジュール34(図1)は、図
3に示す構文を具現化する論理文を備えていることにな
る。図3のダイヤグラムは、次のように解析することが
できる。PCL構文では、プリント・ジョブの前に、Escap
eとして知られる規定のASCII文字シーケンス(2進数で
27に等しい値を持つ)が必要である。構文解析器は、
Escapeシーケンスが識別されると、引き続きデータ・フ
ローにおける次のバイトの解析を行い、その2進数値が
48〜126の場合、解析を次のEscapeシーケンス(非
図示)が来るまで待つ。もし1つめのEscapeシーケンス
の検出後、次バイトの2進数値が、33〜47の場合に
は、プログラムは、後続データがストリング数(Str Nu
m)であるかあるいは96〜126の2進数値を有する文
字であるかを判定する。ストリング数はPCL構文におい
て複数の択一文字群の1つであると定義され、択一文字
群の各文字はストリング数として分類される(STRNUMと
表示の論理図参照のこと)。構文解析器は、ストリング
数が存在すると判定すると、引き続き、次の文字の値が
64〜94であるか否かの判定を行い、そうであれば、
後続データの解析をスキップする。続いて手続きは、Es
capeシーケンスの走査に戻る、等等。文字の値が96〜
126の場合、論理図の最終選択枝部分に移り、ここで
再びストリング数の判定が行われ、等等。
【0017】具体例を挙げて、図3のPCL構文図の理解
を深めてもらおう。27、33、及び、96の値を持つ
文字配列を受信したものと仮定する。PCL構文解析器4
2は、2進数値27を有する文字を見つけると、即座に
それをASCII Escape文字であると識別する。次の文字値
が33であるため、構文解析器は、図3の論理ブロック
Aに移動し、肯定応答を得て、次文字の解析を続行す
る。次文字の値は96であるため、論理ブロックBのス
トリング数の構文に一致しない、しかし論理ブロックC
に示す条件には一致する。引き続き、PCL構文解析器
が、入力データ・ストリーム部分にPCL構文リスティン
グ内の定義を見つけ即ち識別しながら、手続きは続行さ
れる。
【0018】図4には、PostScriptに関する論理図が示
されているが、水平論理ブロック条件が満たされない場
合に限って、解析は、垂直ラインDに沿って行われる。
つまり、ボーター・モジュール36に常駐している構文
解析器は、入力データ・ストリーム内に%を見つけなけ
れば、即座に、「<」標識が存在するか否かの判定を続
行し、存在しなければ、「(」標識が存在するか否かの
判定を続行し、等等。このようにして、PostScriptボー
ター・モジュールにおける構文解析器42は、PostScri
ptキーの解析を続行する。
【0019】次に図5A及び図5Bを参照すると、Post
Script及びPCL言語の両方に関する重みテーブル、及
び、言語解析手続きにて使用するキーが示されている。
まず、図5Aを参照すると、PostScriptキー・タイプに
は、予約語、構文エラー、文書化フォーマットコマン
ド、特殊文字シーケンス、未知語、及び、予約句読点が
ある。予約語は、言語の構文において、構文によって指
定されている用途以外には利用できないと定義された語
である。構文エラーは、言語の構文要件を満たさない文
字の編成である。文書化フォーマットコマンドは、文書
に関するルート指定コマンド、またはそのフォーマット
を定義するコマンドである。特殊文字シーケンスは、構
文によって、その言語に固有のものと定義されたシーケ
ンスである。予約句読点は、同様に、構文によって、そ
の構文内において固有の意味を有するものと定義されて
いる。最後に、未知語は、ただ単にその構文によって認
識されない語である。
【0020】図5Aの右側の項目に示すように、各キー
・タイプは、重みが割り当てられており、重みには、正
のものもあれば、負のものもある。負の重みはその言語
に対する否認であり、正の値はその言語に対する承認で
ある。負の重みを生じるキー・タイプは、正の重みを割
り当てられたキー・タイプほどは重要性を持たないこと
を意味する。これは、負の重みキーがある言語の不在を
示すよりも、正の重みキーはある言語の存在をさらに明
確に示すという事実による。図5Aに示す特定の重み値
は、経験的に導き出されたものであり、言語の識別にお
けるキー・タイプの重要度の見積もりに基づいている。
【0021】図5Bには、PCL言語に関するキー・タイ
プが、示されている。Escape文字については、前記の通
りである。短いシーケンス及び完全シーケンスは、PCL
に固有のものとして、PCL構文によって定義された、規
定の文字シーケンスである。組み合わせシーケンスは、
完全シーケンスを繰り返したものである。不正シーケン
スは、PCL構文によってPCL言語の一部と認識されない文
字シーケンスである。不正シーケンスは、PostScriptに
おける構文エラーに相当する。ここでも、やはり、図5
Bの図の右側の値は、重み値であり、正の値は、PCL言
語の存在の「承認」を表し、負の値は、「否認」を表し
ている。
【0022】図2に戻ると、注目されるのは、各ボータ
ー・モジュールに、キー・タイプ・カウンタ44が設け
られている点である。従って、図5Aから明らかなよう
に、PostScriptボーター・モジュール36には、リスト
・アップされた各キー・タイプ毎に、1つずつ、合わせ
て6つのキー・タイプ・カウンタが含まれる。同様に、
図5Bに示すように、PCLボーター・モジュール36に
は、入力データ・ブロックの解析から判定されたキーの
各タイプの数のカウントを保持する、5つのキー・タイ
プ・カウンタが含まれている。加えて、各ボーター・モ
ジュールには、ボート値レジスタ46が含まれている。
構文解析器42が特定のキー・タイプを見つける毎に、
各ボーター・モジュールにおいてボート値レジスタ46
は、キー・タイプに割り当てられた重み値分が増減す
る。従って、ボート値レジスタ46は、入力データ・ブ
ロック中で見つかった全てのキーの負と正の重みの累積
値である和を表示する。
【0023】図6及び7には、PostScript言語とPCL言
語の両方に関する文脈テーブルが示されていて、この文
脈テーブルは、データ・ブロックから導き出されたキー
に、データ・ブロックの文脈に従って、異なる重み付け
を施す(すなわち、「スキュー」を施す)ことを可能に
する。そして、各ボーター・モジュール中の承認及び否
認ボート・タリー・レジスタ52に、この「スキュー」
値が入力される。各文脈テーブルには、PostScriptとPC
Lの重みテーブルに見受けられるキー・タイプ・リステ
ィングと同じキー・タイプ項目が含まれている。「スキ
ュー方向」項目は、キー・タイプに適用されるべき文脈
スキューが、当初、最大で、その後、減少(シーリン
グ)するのか、あるいは、最小で、その後増大(成長)
するのかを表示する。「成長」スキュー方向とは、デー
タ・ブロックにおけるキー・タイプの順次発生が、デー
タ・ブロックをそれぞれの言語中に形成するという成長
保証を表現する、ことを指すものである。逆に、「シー
リング」スキューは、特定のキー・タイプの最初の発生
が、最も重要であり、後続の発生は、重要性が低下する
ことを表している。
【0024】各文脈テーブルの次の項目は、データ・ブ
ロックにおけるその最初の発生時に、各キータイプに割
り当てられる「初期スキュー」値を示している。これら
は、経験的に規定された値であり、その相対的サイズ
は、言語の識別に対するデータ・ブロック中の特定キー
の初回発生の重要度を示している。説明のためこれらの
値はアラビア数字で示されているが、実際に行う場合
は、16進表記法で構成される。「スキュー修飾子」項
目は、そのキー・タイプの2回目以降の発生時に、初期
スキュー値をいかに修飾するかを示している。例えば、
最初の文書化フォーマットコマンドキーに、40の値が
割り当てられ、一方、2回目に発生する文書化フォーマ
ットコマンドキーには、10の値(40/4)が割り当
てられ、3回目に発生する文書化フォーマットコマンド
キーには、2.5の値(10/4)が割り当てられ、等
等。同様に、特殊句読点キーには、最初に、2.79×
10-7の値が割り当てられるが、2回目の発生時には、
この値に4を乗じる。3回目の発生時には、この結果得
られる値にさらに4を乗じる、等等。
【0025】図7には、PCL言語の文脈テーブルが示さ
れている。ここで注目すべきは、短いシーケンス、完全
シーケンス、及び組み合わせシーケンスのキータイプが
全て、同じ初期スキュー値及び2回目以降の発生時には
同じスキュー修飾を受けるという事である。
【0026】上記のように、各ボーター・モジュールに
は、承認及び否認ボート・タリー・レジスタ52が含ま
れている。文脈テーブルを利用することによって計算さ
れた符号付き値は、承認及び否認ボート・タリー・レジ
スタに挿入されるが、正の値は承認ボート・タリー・レ
ジスタに送り込まれ合計され、負の値は否認ボート・タ
リー・レジスタに送り込まれ合計される。従って、各ボ
ート・タリー・レジスタは、受信データ・ブロックにお
ける文脈にあてはまるキー・タイプの数値を示す和を明
示するものである。承認ボート・タリー・レジスタの和
は、特定言語の存在を示す全てのキーのスキューが施さ
れた重み値を示す。否認ボート・タリー・レジスタは、
ブロックの解析には各ボーター・モジュールが取り扱う
特定言語を使用していないということをそのキーの存在
が示唆しているキーのスキューが施された重み値の和を
示す。 次に、図8〜13を参照すると、図5A、図5
B、図6、及び、図7に示すテーブルと共に、言語識別
手続きについて明らかにされている。この手続きは、新
しいデータ・ブロックを受信すると開始される(ホ゛ックス10
0)。このデータ・ブロックは、任意のサイズとすること
ができるが、妥当な入力データサンプルを含むことを可
能とする一方で、プリント機能を遅延させるほど長くは
ないサイズになるように選択することが望ましい。受信
ブロックのサイズは、約256バイトが望ましい。
【0027】上記のように、予測言語毎に、独立したボ
ーター・モジュールが設けられており、この場合はPCL
及びPostScriptが、予測言語であると仮定される。各ボ
ーター・モジュールは、並列にそして受信ブロック入力
と同時に機能する。図8に示すように、ボーター・モジ
ュールの構文解析器42は、データ・ブロック入力にキ
ーが見つかる毎に、まずその識別を行う(ホ゛ックス102)。こ
れらのキーは次にタイプによって識別され(ホ゛ックス104)、
対応するキー・タイプ・カウンタを新しいキー・タイプ
が確認される毎に1ずつ増減する(ホ゛ックス106)。同様に、
キーが見つかる毎に、符号付き重みがボート値に加えら
れるが、この重み値は重みテーブルから見つける(ホ゛ックス
108)。例えば、PostScriptボーター・モジュールは、構
文エラーの存在を判定すると、ボート値レジスタ46に
−50を加算する(図2)。同様に、特殊文字シーケン
スが確認されると、ボーター・モジュールのボート値レ
ジスタ46に+80が加えられる。
【0028】こうして、ボーター・モジュールは、ボー
ター・モジュールの走査を受けている言語に対する承認
と否認の重み付きボートをその値が示す、承認と否認各
々の累積された和を維持する。しかし、ボート値レジス
タの和は、データ・ブロック中のそのキーが現れる文脈
(すなわち、キーの相互関係)を考慮していない。従っ
て、累積ボート値は、正確な言語の選択を一貫して保証
するには不十分である。
【0029】構文解析器内において、該手続きは、デー
タ・ブロックの最後のキーが見つかったか否かを判定し
て続行される(ホ゛ックス110)。最後のキーが見つからなけれ
ば、手続きサイクルは、最初に戻り、それ自体を反復す
ることになる。最後のキーが入力データ・ブロックから
識別されれば、該手続きは、ボート値レジスタ46の値
が、0を超えるかまたは0未満かを判定する(判定ホ゛ックス
111)。ボート値が、0以上であれば、この結果を出力1
12として示し、0未満の場合はその結果を出力113
として示す。
【0030】図8に示す構文解析と同時に、各ボーター
・モジュールは、文脈解析を実施する。文脈解析の手続
きは、図9に示されており、承認及び否認タリー・レジ
スタの設定から始まる(ホ゛ックス120)。該手続きは、図8に
おけるボックス104からの入力として、識別されたキ
ー及びキー・タイプを受信する。識別されたキー毎に、
該手続きでは、キーがそのデータ・ブロックにおいて識
別されたそのタイプの初期キーであるか否かを判定す
る。そうであれば、該手続きは、関連する文脈テーブル
からそのキー・タイプの初期スキュー値を求める(ホ゛ックス
124)。PCLボーター・モジュールは、図7の文脈テーブ
ルに示す値を用い、PostScriptボーター・モジュール
は、図6の文脈テーブルの値を用いる。
【0031】初期スキュー値が、負であると判定される
と(ホ゛ックス126)、ボーター・モジュールの否認タリー・レ
ジスタを初期スキュー値分だけ増減する(ホ゛ックス126)。逆
に、初期スキュー値が正の場合、ボーター・モジュール
の承認タリー・レジスタを初期スキュー値分だけ増減す
る(ホ゛ックス128)。
【0032】判定ボックス122に戻って、ボックス1
04からのキー入力が、指定のキー・タイプのキーのそ
のデータ・ブロックにおける最初の発生ではないと判定
されると、その手続きは、判定ボックス130に移動
し、判定されたキー・タイプの初期スキュー値が正と負
のいずれであるかを判定する。正であれば、承認タリー
・レジスタに入力されている最新のスキュー値をスキュ
ー修飾子と組み合わせて変更する(ホ゛ックス132)。例えば、
正の初期スキュー値を仮定し、スキュー修飾子がスキュ
ー値を4で割るように指示している場合、承認タリー・
レジスタに入力されている最新のスキュー値を4で割
る。同様に、スキュー修飾子が乗算を指示している場
合、承認タリー・レジスタに入力されている最新のスキ
ュー値に修飾子の値を乗じる。続いて、承認タリー・レ
ジスタ中で、修飾スキュー値にOR演算を施して、その
累積値を更新する。OR機能は累積値のビット・サイズ
の成長を阻止する(つまりその和の桁上げを本質的にな
くす)。承認及び否認タリー・レジスタは両方とも、同
様に処理されるため、続く両者間の比較において、桁上
げを行わないことによる影響はない。
【0033】判定ボックス120に戻ると、初期スキュ
ー値が負の値であると分かると、否認タリー・レジスタ
に入力されている最新のスキュー値がスキュー修飾子分
だけ変更される。前記の様に、該機能が乗算を指示して
いる場合、最新の入力されているスキュー値に要求定数
を乗じ、除算が求められている場合、これに従った処理
が行われる(ホ゛ックス136)。該手続きは、次に、否認タリー
・レジスタにて、修飾されたスキュー値にOR演算を施
して、その値の更新を行う。
【0034】この時点で、該手続きは、ブロック内の最
後のキーが識別されたか否かを判定することによって続
行され(判定ホ゛ックス140)、識別されていなければ、さら
に、承認または否認タリーは98%を超える確実性を示
す値であるか否かの判定が行われる(判定ホ゛ックス142)。こ
れは、承認または否認タリーの累積値が、各タリーの得
ることができる最大値の98%を超える場合、該手続き
はそれ以上のキーの解析を「避けて」、推定に基づき言
語が識別されたと仮定するものである。
【0035】判定ボックス142で、否ということにな
ると、該手続きは、リサイクルして、次のキーの判定を
開始する。ブロック内の最後のキーが、処理された後
(判定ボックス140によって判定される)、該手続き
は、承認タリー・レジスタと否認タリー・レジスタの間
の差を計算する(ホ゛ックス144)。次に、計算された差をタリ
ー間において予測される最大予測差値と比較する。計算
された値が、最大予測差値の25%未満(経験上の判定
ポイント)の場合、承認タリーと否認タリーが極めて近
似しているため(すなわち「混乱している」)、上記文
脈解析だけに基づいて、明確な判定を下すことはできな
いものとみなされる。計算された値が、タリー間におけ
る最大予測差値の25%以上である場合、「混乱のな
い」出力を、判定ボックス146から得て、大きいほう
のタリー値が推定に基づき正確であるとみなされる。
【0036】図10の場合、判定ボックス146による
「混乱のない」表示があると、引き続き、承認タリーが
否認タリーを超えるか否かの判定が行われる(判定ホ゛ックス
148)。どちらのタリーが大きいかに基づいて、大きいほ
うのタリーが「正規化」される。判定ボックス148に
よって、肯定の表示が行われると(承認タリー>否認タ
リー)、承認タリーについて正規化手続きが実施され(ホ
゛ックス150)、その値を0〜+127の範囲内にマッピング
する。この正規化アクションを行うのは、異なるボータ
ー・モジュールにおける承認及び否認タリーが、言語の
特性によって決まる異なる累積値を示すためである。従
って、各種ボーター・モジュールにおける累積値は、そ
の絶対値に関して、ほとんどまたは全く相互関係がない
可能性がある。しかし、各ボーター・モジュールにおけ
る個々の承認及び否認タリー値が、特定のタリーに関し
て出現し得る最大値のパーセンテージ(または同等の数
値)として明示される場合は、比較の対象としての意味
を有することになる。従って、承認タリー>否認タリー
と仮定した場合、承認タリーを該タリーが得ることがで
きる最大値と比較し、比率を求める。そして、該比率に
より、タリー値がマッピングされる0〜+127という
規定の数値範囲内のポイントが決定する。
【0037】図11及び図12は、それぞれ、PCL及びP
ostScriptの検出に割り当てられたボーター・モジュー
ルにおける、「混乱した」表示を処理する手続きが示さ
れている。PostScript言語はより複雑であるため、Post
Script手続きのほうが、PCL手続きよりも複雑になる。
【0038】図11は、図9の判定ボックス146によ
って、混乱した入力が表示された場合の、PCLボーター
・モジュールの手続きである。混乱した表示に応答し、
図8における判定ボックス111から出力された累積ボ
ート値が判定される(判定ホ゛ックス158)。累積値が、0未満
とわかると(特定のボーター・モジュールにおけるボー
ト値レジスタの累積値が、累積重みの負の和を表すこと
を示している)、正規化された否認タリーが採決モジュ
ールに戻される(ホ゛ックス160)。累積ボート値が0以上と分
かると、正規化された承認タリーが採決モジュールに戻
される(ホ゛ックス162)。
【0039】図12には、図9の判定ボックス146に
よって、混乱した入力であると表示された場合の、Post
Scriptボーター・モジュールの手続きが示されている。
これに応答して、該手続きでは、入力データ・ブロック
の構文解析において(図8)、構文エラーが見つからず
かつ少なくとも1つの特殊文字シーケンスが検出された
か否かの判定が行われる(判定ホ゛ックス164)。構文エラーが
見つかったか(すなわち構文エラー・カウントが0に等
しくない)、あるいは、特殊文字シーケンスが検出され
なかった場合、正規化された否認タリーが採決モジュー
ルに戻される(ホ゛ックス166)。ボックス164に表示のAN
D条件が成立する場合、図8の判定ボックス111から
の累積ボート値出力が検査される(判定ホ゛ックス168)。累積
ボート値が0未満であることが分かると(特定のボータ
ー・モジュールにおけるボート値レジスタの累積値が、
累積重みの負の和を表すことを示している)、正規化さ
れた否認タリーが採決モジュールに戻される(ホ゛ックス16
6)。累積ボート値が0以上と分かると、正規化された承
認タリーが採決モジュールに戻される(ホ゛ックス170)。
【0040】次に図13を参照すると、採決モジュール
は、各ボーター・モジュールから戻された正規化タリー
を蓄積する(ホ゛ックス172)。上記のように、各ボーター・モ
ジュールは、0〜+127または−1〜−128のどち
らかの値を示す単一数を採決モジュールに戻すが、前者
の値はある言語に対する承認であり、後者の値はその言
語に対する否認である。判定ボックス174に示すよう
に、採決モジュールに戻される全てのボーター・モジュ
ールのタリーが負の場合、無言語表示がセットされる(ホ
゛ックス176)。一方、タリーの全てが負というわけではない
場合、最大の正のタリーが入力言語として選択される(ホ
゛ックス178)。
【0041】要するに、該手続きは、言語の識別を決定
するために、3つの独立した同時解析データ累積を用い
ている。それらは以下の表示を含む。特定の言語に割り
当てられたボーター・モジュールに関する正と負両方の
キーの重みカウントと、入力データ・ブロック中に見つ
かったキーが言語に対する正のボート(承認)と負のボ
ート(否認)のいずれを累積的に表示するかを示す各ボ
ーター・モジュール中の重みの合計と、及び、言語に対
するキーの重要度に基づく文脈解析を組み込みゆえに並
列で独立した言語ボートを提供する承認及び否認タリー
である。図8〜図13のフロー図に示すように、これら
のボートの組み合わせによって、最終的な言語選択にお
いて高レベルの確信が得られる。さらに、採決プロセス
を、各言語毎に独立したボーター・モジュールを備えた
独立した採決モジュール中に編成することによって、開
始時に予期していなかった追加言語に適応するように、
該システムに修正を施すことが可能になる。
【0042】理解しておくべきは、以上の解説は、本発
明の開示でしかないという点である。当該技術の熟練者
であれば、本発明を逸脱することなく、種々の変更及び
修正を考案することが可能である。従って、本発明は、
付属の請求項の範囲内にある、こうした変更、修正、及
び、変形を全て包含することを意図したものである。
【0043】
【発明の効果】本発明は上記のように、複数の入力言語
に応答するデータ処理システムにおいて、言語の存在に
対する承認を表す入力データ中の定義された部分(承認
キー)及び言語の存在に対する否認を表す入力データ中
の定義された部分(否認キー)の識別を行い、これを用
いて受信言語の同一性を決定する事により、従来の誤っ
た言語識別を引き起こすデータ処理システムを改良した
周辺装置に対する言語識別システムの提供が可能とな
る。又、入力データストリームの文脈解析及び構文解析
の両方を用いた言語識別システムを提供できる。さら
に、将来の言語を支援する事の可能な拡張性のある言語
識別システムを提供する。
【図面の簡単な説明】
【図1】本発明の言語識別手続きを具現化するシステム
ブロック図である。
【図2】図1に示す言語識別手続きにおけるボーター・
モジュール内のサブルーチンのリストである。
【図3】プリンタ制御言語PCLの構文上の定義である。
【図4】プリンタ制御言語PostScriptの構文上の定義で
ある。
【図5】図5Aは、PostScript言語におけるキーの重み
テーブルを例示している。図5Bは、PCL言語における
キーの重みテーブルを例示している。
【図6】PostScript言語の文脈テーブルである。
【図7】PCL言語の文脈テーブルである。
【図8】構文解析器の言語識別手続きを示すフロー図で
ある。
【図9】文脈解析の手続きを示すフロー図である。
【図10】図9にて「混乱のない」表示があった場合の
手続きを示すフロー図である。
【図11】PCL検出に割当てられたボーターモジュール
における図9にて「混乱した」表示があった場合の手続
きを示すフロー図である。
【図12】PostScript検出に割当てられたボーターモジ
ュールにおける図9にて「混乱した」表示があった場合
の手続きを示すフロー図である。
【図13】採決モジュールの手続きを示すフロー図であ
る。
【符号の説明】
10 パーソナルコンピュータ(PCL言語対応) 12 パーソナルコンピュータ(PostScript言語対応) 14 パーソナルコンピュータ(その他のプリンタ制
御言語対応) 16 ローカルエリアネットワーク(LAN) 18 プリンタ 20 CPU 22 I/Oモジュール 24 RAM 26 プリンタ18内のバス 28 プリントエンジン 30 言語識別手続き 32 データブロック記億領域 34 ボーターモジュール(PCL言語用) 36 ボーターモジュール(PostScript言語用) 38 ボーターモジュール(その他のプリンタ制御言
語用) 40 採決モジュール 42 構文解析器 44 キータイプカウンタ 46 ボート値レジスタ 48 重みテーブル 50 文脈テーブル 52 承認/否認ボートタリーレジスタ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】複数の入力言語に応答するデータ処理シス
    テムであって、各言語は予め規定された構文を固守して
    いて、入力データにおける定義されたデータ部分(承認
    キー)の存在がある言語の存在に対する承認を表し、他
    の定義されたデータ部分(否認キー)の存在がある言語
    の存在に対する否認を表す前記システムにおいて、入力
    言語を識別する方法であって、この方法が、 a)予測言語毎に入力データブロックの構文を解析し
    て、前記データブロック中の承認及び否認キーを識別
    し、 b)前記解析に応じて、予測言語毎に、承認タリー及び
    否認タリーを与え、前記タリーがキー項目の総和であ
    り、その各キー項目が識別したキー・カウントにスキュ
    ーを乗じたものから構成され、前記スキュー値が前記デ
    ータ・ブロックの前記構文及び文脈における前記キーの
    重要度を表し、前記承認タリーが承認キーの項目の和で
    あり、前記否認タリーが否認キーの項目の和であり、 c)前記承認タリー及び否認タリーを比較して、それら
    の値が極めて接近していて、不明確な表示にならないか
    否かを判定して、さらに、データ・ブロックの別の構文
    特性に基づいて前記の不明確さを解消し、複数タリーの
    中の1つに基づいてある値を表示し、その表示は、前記
    の別の構文特性がその言語への承認を示すのかあるいは
    否認を示すかに基づくものであり、 d)タリー間に不明確さがない場合には、値の大きい方
    のタリーから導き出した値を表示し、 e)前記予測言語毎の前記の表示値に基づいて、受信言
    語の同一性を決定するというステップからなることを特
    徴とする、周辺装置のための言語識別方法。
JP00985693A 1992-01-24 1993-01-25 周辺装置のための言語識別方法 Expired - Fee Related JP3485588B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US825479 1992-01-24
US07/825,479 US5392419A (en) 1992-01-24 1992-01-24 Language identification system and method for a peripheral unit

Publications (2)

Publication Number Publication Date
JPH0619720A true JPH0619720A (ja) 1994-01-28
JP3485588B2 JP3485588B2 (ja) 2004-01-13

Family

ID=25244099

Family Applications (1)

Application Number Title Priority Date Filing Date
JP00985693A Expired - Fee Related JP3485588B2 (ja) 1992-01-24 1993-01-25 周辺装置のための言語識別方法

Country Status (7)

Country Link
US (1) US5392419A (ja)
EP (1) EP0558804B1 (ja)
JP (1) JP3485588B2 (ja)
KR (1) KR100256458B1 (ja)
CA (1) CA2076464C (ja)
DE (1) DE69229626T2 (ja)
TW (1) TW202508B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100408762B1 (ko) * 1994-08-08 2004-05-22 오세-테크놀로지스 베파우 디지탈데이타수신언어의자동인식방법

Families Citing this family (157)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0585523B1 (en) * 1992-09-03 1998-12-09 Hewlett-Packard Company Automatic language boundary identification for a peripheral unit that supports multiple control languages
JP2871370B2 (ja) * 1993-01-20 1999-03-17 キヤノン株式会社 出力制御方法及び装置
US5402527A (en) * 1993-04-23 1995-03-28 Xerox Corporation Apparatus and method for determining the page description language in which a print job is written
US5548507A (en) 1994-03-14 1996-08-20 International Business Machines Corporation Language identification process using coded language words
US5580177A (en) * 1994-03-29 1996-12-03 Hewlett-Packard Company Printer/client network with centrally updated printer drivers and printer status monitoring
JP3919238B2 (ja) * 1994-05-31 2007-05-23 キヤノン株式会社 印刷システムおよび印刷システムの印刷制御方法および印刷制御装置
JP3201141B2 (ja) * 1994-06-02 2001-08-20 セイコーエプソン株式会社 データ受信方式
US5526469A (en) * 1994-06-14 1996-06-11 Xerox Corporation System for printing image data in a versatile print server
US6132116A (en) * 1994-06-14 2000-10-17 Canon Kabushiki Kaisha Print system and method for presenting required record time of print system
US6002843A (en) * 1994-06-15 1999-12-14 Canon Kabushiki Kaisha Printing apparatus and its control method
US6597465B1 (en) 1994-08-09 2003-07-22 Intermec Ip Corp. Automatic mode detection and conversion system for printers and tag interrogators
US5805781A (en) * 1994-12-07 1998-09-08 Hewlett-Packard Company Printer method and apparatus for combining sub-images to eliminate image artifacts
JP3563793B2 (ja) * 1994-12-21 2004-09-08 キヤノン株式会社 データ処理方法及びその装置
US5555350A (en) * 1995-04-05 1996-09-10 Xionics Document Technologies, Inc. Multi-interpreter printer and process including recognition of out-of-bank characters
US5854940A (en) * 1995-04-24 1998-12-29 Fuji Xerox Co., Ltd. Output control system for interpreting input data according to a specific control language based upon outputs from a plurality of control language determining devices
US5828817A (en) * 1995-06-29 1998-10-27 Digital Equipment Corporation Neural network recognizer for PDLs
US5715379A (en) * 1995-10-30 1998-02-03 Xerox Corporation Architecture for a digital printer with multiple independent decomposers
US6009382A (en) * 1996-08-19 1999-12-28 International Business Machines Corporation Word storage table for natural language determination
US6023670A (en) * 1996-08-19 2000-02-08 International Business Machines Corporation Natural language determination using correlation between common words
US5913185A (en) * 1996-08-19 1999-06-15 International Business Machines Corporation Determining a natural language shift in a computer document
US6002998A (en) * 1996-09-30 1999-12-14 International Business Machines Corporation Fast, efficient hardware mechanism for natural language determination
JP3559666B2 (ja) * 1996-12-27 2004-09-02 キヤノン株式会社 出力制御装置および出力制御方法
US6415250B1 (en) * 1997-06-18 2002-07-02 Novell, Inc. System and method for identifying language using morphologically-based techniques
US6272456B1 (en) * 1998-03-19 2001-08-07 Microsoft Corporation System and method for identifying the language of written text having a plurality of different length n-gram profiles
US7126703B1 (en) * 1998-08-04 2006-10-24 Sharp Laboratories Of America, Inc. Printer controller with error recovery for multiple language capability
US6292772B1 (en) 1998-12-01 2001-09-18 Justsystem Corporation Method for identifying the language of individual words
EP1006431A1 (en) * 1998-12-02 2000-06-07 Xerox Corporation Printing system and method
US6167369A (en) * 1998-12-23 2000-12-26 Xerox Company Automatic language identification using both N-gram and word information
US6813747B1 (en) 1998-12-31 2004-11-02 International Business Machines Corporation System and method for output of multipart documents
US7031002B1 (en) 1998-12-31 2006-04-18 International Business Machines Corporation System and method for using character set matching to enhance print quality
US7039637B2 (en) 1998-12-31 2006-05-02 International Business Machines Corporation System and method for evaluating characters in an inputted search string against a character table bank comprising a predetermined number of columns that correspond to a plurality of pre-determined candidate character sets in order to provide enhanced full text search
US6760887B1 (en) 1998-12-31 2004-07-06 International Business Machines Corporation System and method for highlighting of multifont documents
US7103532B1 (en) 1998-12-31 2006-09-05 International Business Machines Corp. System and method for evaluating character in a message
US6718519B1 (en) 1998-12-31 2004-04-06 International Business Machines Corporation System and method for outputting character sets in best available fonts
US6539118B1 (en) 1998-12-31 2003-03-25 International Business Machines Corporation System and method for evaluating character sets of a message containing a plurality of character sets
US7191114B1 (en) 1999-08-27 2007-03-13 International Business Machines Corporation System and method for evaluating character sets to determine a best match encoding a message
US8645137B2 (en) 2000-03-16 2014-02-04 Apple Inc. Fast, language-independent method for user authentication by voice
US6781710B1 (en) * 2000-03-27 2004-08-24 Hewlett-Packard Development Company, L.P. Print job capture subsystem with pass-through support
US6519557B1 (en) 2000-06-06 2003-02-11 International Business Machines Corporation Software and method for recognizing similarity of documents written in different languages based on a quantitative measure of similarity
US20040205675A1 (en) * 2002-01-11 2004-10-14 Thangaraj Veerappan System and method for determining a document language and refining the character set encoding based on the document language
FR2848688A1 (fr) * 2002-12-17 2004-06-18 France Telecom Identification de langue d'un texte
JP2004362249A (ja) * 2003-06-04 2004-12-24 Advanced Telecommunication Research Institute International 翻訳知識最適化装置、翻訳知識最適化のためのコンピュータプログラム、コンピュータ及び記憶媒体
US8027832B2 (en) 2005-02-11 2011-09-27 Microsoft Corporation Efficient language identification
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US7973954B2 (en) * 2006-08-28 2011-07-05 Sharp Laboratories Of America, Inc. Method and apparatus for automatic language switching for an imaging device
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US10496753B2 (en) 2010-01-18 2019-12-03 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US8712776B2 (en) * 2008-09-29 2014-04-29 Apple Inc. Systems and methods for selective text to speech synthesis
US8583418B2 (en) * 2008-09-29 2013-11-12 Apple Inc. Systems and methods of detecting language and natural language strings for text to speech synthesis
US9959870B2 (en) 2008-12-11 2018-05-01 Apple Inc. Speech recognition involving a mobile device
US8380507B2 (en) * 2009-03-09 2013-02-19 Apple Inc. Systems and methods for determining the language to use for speech generated by a text to speech engine
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US20120311585A1 (en) 2011-06-03 2012-12-06 Apple Inc. Organizing task items that represent tasks to perform
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US9858925B2 (en) 2009-06-05 2018-01-02 Apple Inc. Using context information to facilitate processing of commands in a virtual assistant
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
US10679605B2 (en) 2010-01-18 2020-06-09 Apple Inc. Hands-free list-reading by intelligent automated assistant
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US10553209B2 (en) 2010-01-18 2020-02-04 Apple Inc. Systems and methods for hands-free notification summaries
US10705794B2 (en) 2010-01-18 2020-07-07 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US10762293B2 (en) 2010-12-22 2020-09-01 Apple Inc. Using parts-of-speech tagging and named entity recognition for spelling correction
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US8994660B2 (en) 2011-08-29 2015-03-31 Apple Inc. Text correction processing
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US9483461B2 (en) 2012-03-06 2016-11-01 Apple Inc. Handling speech synthesis of content for multiple languages
US9280610B2 (en) 2012-05-14 2016-03-08 Apple Inc. Crowd sourcing information to fulfill user requests
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
US9495129B2 (en) 2012-06-29 2016-11-15 Apple Inc. Device, method, and user interface for voice-activated navigation and browsing of a document
US9576574B2 (en) 2012-09-10 2017-02-21 Apple Inc. Context-sensitive handling of interruptions by intelligent digital assistant
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
US9336197B2 (en) * 2013-01-22 2016-05-10 Tencent Technology (Shenzhen) Company Limited Language recognition based on vocabulary lists
DE212014000045U1 (de) 2013-02-07 2015-09-24 Apple Inc. Sprach-Trigger für einen digitalen Assistenten
US9368114B2 (en) 2013-03-14 2016-06-14 Apple Inc. Context-sensitive handling of interruptions
WO2014144579A1 (en) 2013-03-15 2014-09-18 Apple Inc. System and method for updating an adaptive speech recognition model
WO2014144949A2 (en) 2013-03-15 2014-09-18 Apple Inc. Training an at least partial voice command system
US9582608B2 (en) 2013-06-07 2017-02-28 Apple Inc. Unified ranking with entropy-weighted information for phrase-based semantic auto-completion
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
WO2014197336A1 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for detecting errors in interactions with a voice-based digital assistant
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
DE112014002747T5 (de) 2013-06-09 2016-03-03 Apple Inc. Vorrichtung, Verfahren und grafische Benutzerschnittstelle zum Ermöglichen einer Konversationspersistenz über zwei oder mehr Instanzen eines digitalen Assistenten
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
CN105265005B (zh) 2013-06-13 2019-09-17 苹果公司 用于由语音命令发起的紧急呼叫的系统和方法
AU2014306221B2 (en) 2013-08-06 2017-04-06 Apple Inc. Auto-activating smart responses based on activities from remote devices
US9620105B2 (en) 2014-05-15 2017-04-11 Apple Inc. Analyzing audio input for efficient speech and music recognition
US10592095B2 (en) 2014-05-23 2020-03-17 Apple Inc. Instantaneous speaking of content on touch devices
US9502031B2 (en) 2014-05-27 2016-11-22 Apple Inc. Method for supporting dynamic grammars in WFST-based ASR
US10289433B2 (en) 2014-05-30 2019-05-14 Apple Inc. Domain specific language for encoding assistant dialog
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9760559B2 (en) 2014-05-30 2017-09-12 Apple Inc. Predictive text input
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9785630B2 (en) 2014-05-30 2017-10-10 Apple Inc. Text prediction using combined word N-gram and unigram language models
EP3149728B1 (en) 2014-05-30 2019-01-16 Apple Inc. Multi-command single utterance input method
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9842101B2 (en) 2014-05-30 2017-12-12 Apple Inc. Predictive conversion of language input
US9734193B2 (en) 2014-05-30 2017-08-15 Apple Inc. Determining domain salience ranking from ambiguous words in natural speech
US10078631B2 (en) 2014-05-30 2018-09-18 Apple Inc. Entropy-guided text prediction using combined word and character n-gram language models
US10659851B2 (en) 2014-06-30 2020-05-19 Apple Inc. Real-time digital assistant knowledge updates
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US10446141B2 (en) 2014-08-28 2019-10-15 Apple Inc. Automatic speech recognition based on user feedback
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10789041B2 (en) 2014-09-12 2020-09-29 Apple Inc. Dynamic thresholds for always listening speech trigger
US9606986B2 (en) 2014-09-29 2017-03-28 Apple Inc. Integrated word N-gram and class M-gram language models
US9886432B2 (en) 2014-09-30 2018-02-06 Apple Inc. Parsimonious handling of word inflection via categorical stem + suffix N-gram language models
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US9646609B2 (en) 2014-09-30 2017-05-09 Apple Inc. Caching apparatus for serving phonetic pronunciations
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US10552013B2 (en) 2014-12-02 2020-02-04 Apple Inc. Data detection
US9711141B2 (en) 2014-12-09 2017-07-18 Apple Inc. Disambiguating heteronyms in speech synthesis
US9865280B2 (en) 2015-03-06 2018-01-09 Apple Inc. Structured dictation using intelligent automated assistants
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9899019B2 (en) 2015-03-18 2018-02-20 Apple Inc. Systems and methods for structured stem and suffix language models
US10210385B2 (en) 2015-04-09 2019-02-19 Hewlett-Packard Development Company, L.P. Routing image frames to element detectors
US9842105B2 (en) 2015-04-16 2017-12-12 Apple Inc. Parsimonious continuous-space phrase representations for natural language processing
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10127220B2 (en) 2015-06-04 2018-11-13 Apple Inc. Language identification from short strings
US10101822B2 (en) 2015-06-05 2018-10-16 Apple Inc. Language input correction
US10255907B2 (en) 2015-06-07 2019-04-09 Apple Inc. Automatic accent detection using acoustic models
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US10186254B2 (en) 2015-06-07 2019-01-22 Apple Inc. Context-based endpoint detection
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US9697820B2 (en) 2015-09-24 2017-07-04 Apple Inc. Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks
US10366158B2 (en) 2015-09-29 2019-07-30 Apple Inc. Efficient word encoding for recurrent neural network language models
US11010550B2 (en) 2015-09-29 2021-05-18 Apple Inc. Unified language modeling framework for word prediction, auto-completion and auto-correction
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10446143B2 (en) 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
US9934775B2 (en) 2016-05-26 2018-04-03 Apple Inc. Unit-selection text-to-speech synthesis based on predicted concatenation parameters
US9972304B2 (en) 2016-06-03 2018-05-15 Apple Inc. Privacy preserving distributed evaluation framework for embedded personalized systems
US10249300B2 (en) 2016-06-06 2019-04-02 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
DK179588B1 (en) 2016-06-09 2019-02-22 Apple Inc. INTELLIGENT AUTOMATED ASSISTANT IN A HOME ENVIRONMENT
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10192552B2 (en) 2016-06-10 2019-01-29 Apple Inc. Digital assistant providing whispered speech
US10490187B2 (en) 2016-06-10 2019-11-26 Apple Inc. Digital assistant providing automated status report
US10509862B2 (en) 2016-06-10 2019-12-17 Apple Inc. Dynamic phrase expansion of language input
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
US10431203B2 (en) 2017-09-05 2019-10-01 International Business Machines Corporation Machine training for native language and fluency identification

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4829580A (en) * 1986-03-26 1989-05-09 Telephone And Telegraph Company, At&T Bell Laboratories Text analysis system with letter sequence recognition and speech stress assignment arrangement
JPH085213B2 (ja) * 1987-03-04 1996-01-24 ブラザー工業株式会社 印字装置
US4992957A (en) * 1988-03-17 1991-02-12 Seiko Epson Corporation Printer and method for utilizing character codes and control codes within a printer
GB8810387D0 (en) * 1988-05-03 1988-06-08 Altham D R S Printer control device
JP2615137B2 (ja) * 1988-06-13 1997-05-28 三田工業株式会社 印字装置
US5062143A (en) * 1990-02-23 1991-10-29 Harris Corporation Trigram-based method of language identification
US5293466A (en) * 1990-08-03 1994-03-08 Qms, Inc. Method and apparatus for selecting interpreter for printer command language based upon sample of print job transmitted to printer
US5165014A (en) * 1990-09-12 1992-11-17 Hewlett-Packard Company Method and system for matching the software command language of a computer with the printer language of a printer
JP2661416B2 (ja) * 1991-06-29 1997-10-08 ブラザー工業株式会社 印字システム
JP2875670B2 (ja) * 1991-12-02 1999-03-31 キヤノン株式会社 出力制御装置およびその出力制御方法
US5222200A (en) * 1992-01-08 1993-06-22 Lexmark International, Inc. Automatic printer data stream language determination

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100408762B1 (ko) * 1994-08-08 2004-05-22 오세-테크놀로지스 베파우 디지탈데이타수신언어의자동인식방법

Also Published As

Publication number Publication date
EP0558804A2 (en) 1993-09-08
KR100256458B1 (ko) 2000-05-15
DE69229626T2 (de) 1999-11-11
CA2076464C (en) 1997-07-15
US5392419A (en) 1995-02-21
JP3485588B2 (ja) 2004-01-13
EP0558804B1 (en) 1999-07-21
DE69229626D1 (de) 1999-08-26
CA2076464A1 (en) 1993-07-25
KR930016864A (ko) 1993-08-30
EP0558804A3 (ja) 1994-04-20
TW202508B (en) 1993-03-21

Similar Documents

Publication Publication Date Title
JP3485588B2 (ja) 周辺装置のための言語識別方法
US5555435A (en) Automatic language boundary identification for a peripheral unit that supports multiple control languages
US6175834B1 (en) Consistency checker for documents containing japanese text
US5165014A (en) Method and system for matching the software command language of a computer with the printer language of a printer
CN101484907B (zh) 用于手写体符号的识别的方法和设备
WO2000033295A1 (en) Method for identifying the language of individual words
CN107680588B (zh) 智能语音导航方法、装置及存储介质
US5960113A (en) Method of automatically recognizing a language in which digital data is received
JPH07160389A (ja) データ入力ワークステーション
US5469373A (en) Printing apparatus and method that discriminates which analyzer should analyze information
US5987228A (en) Network printing apparatus for multiple protocols
US4827530A (en) Method and apparatus for Korean character recognition from Korean alphabet row
JP2875670B2 (ja) 出力制御装置およびその出力制御方法
CN114172736A (zh) 一种基于大数据计算机网络安全防护装置
JP4047895B2 (ja) 文書校正装置およびプログラム記憶媒体
US8232901B2 (en) Determining an alternative character string
CN1055553C (zh) 外围设备的语言识别系统和方法
JPH10285325A (ja) ファックス受信転送システム
EP1615111A1 (en) Adding interrogative punctuation to an electronic message
JP3056950B2 (ja) 文字認識装置及び方法
JPH10254871A (ja) 文書入力方法およびその装置
CN111507085A (zh) 句型识别方法
JPH09246987A (ja) データ圧縮装置及び同圧縮装置で圧縮されたデータを対象とするデータ検索装置
JP2006085739A (ja) 文書校正装置およびプログラム記憶媒体
JPH07141351A (ja) 文字処理装置

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081024

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091024

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees