JPH04344523A - Message generating system - Google Patents

Message generating system

Info

Publication number
JPH04344523A
JPH04344523A JP3144120A JP14412091A JPH04344523A JP H04344523 A JPH04344523 A JP H04344523A JP 3144120 A JP3144120 A JP 3144120A JP 14412091 A JP14412091 A JP 14412091A JP H04344523 A JPH04344523 A JP H04344523A
Authority
JP
Japan
Prior art keywords
message
data
dictionary
vocabulary
data type
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.)
Pending
Application number
JP3144120A
Other languages
Japanese (ja)
Inventor
Akihiro Ouchi
大内 昭洋
Tatsuya Hirata
達也 平田
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.)
OKINAWA NIPPON DENKI SOFTWARE KK
NEC Corp
NEC Software Okinawa Ltd
Original Assignee
OKINAWA NIPPON DENKI SOFTWARE KK
NEC Corp
NEC Software Okinawa Ltd
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 OKINAWA NIPPON DENKI SOFTWARE KK, NEC Corp, NEC Software Okinawa Ltd filed Critical OKINAWA NIPPON DENKI SOFTWARE KK
Priority to JP3144120A priority Critical patent/JPH04344523A/en
Publication of JPH04344523A publication Critical patent/JPH04344523A/en
Pending legal-status Critical Current

Links

Landscapes

  • Digital Computer Display Output (AREA)

Abstract

PURPOSE:To perform the correction of a message and the use at the other language circle without changing a source code by generating the massage of a format registered in a dictionary from the data received from an application program. CONSTITUTION:A data receiving means 1 receives the data from an application program 7 and stores them to a data storing buffer 2-1. A structure deciding means 2-2 retrieves the structure of the message sentence equivalent to the data stored in the data storing buffer 2-1 from a data type dictionary 3 and stores it into a structure storing buffer 2-3. A message generating means 2-4 combines the vocabulary retrieved from a vocabulary dictionary 4 to the structure of the message sentence stored in the structure storing buffer 2-3, generates the message, and stores it into a message storing buffer 2-5. An output means 5 display the message stored in the message storing buffer 2-5 at a screen 8. A dictionary registering means 6 is used for the data registration to the data type dictionary and the vocabulary dictionary.

Description

【発明の詳細な説明】[Detailed description of the invention]

【0001】0001

【産業上の利用分野】本発明は、アプリケーション・プ
ログラムから渡されるデータを指定の形式に従いメッセ
ージに変換するメッセージの生成処理方式に関するもの
である。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a message generation processing method for converting data passed from an application program into a message according to a specified format.

【0002】0002

【従来の技術】従来、アプリケーション・プログラムか
らのメッセージは、プログラムのソース・コード上の該
当する箇所に直接メッセージを記述する方法や、メッセ
ージを出力するルーチンを設けてそこにメッセージをま
とめて記述し、そのルーチンに出力するメッセージのキ
ー値を通知する方法や、メッセージとそのメッセージの
キー値をファイルに格納し、アプリケーション・プログ
ラムがキー値によってファイルからメッセージを取り出
す方法が用いられている。
[Prior Art] Conventionally, messages from application programs have been written either directly at the appropriate location in the source code of the program, or by providing a routine to output the messages and writing the messages all together there. , a method is used in which the key value of the message to be output is notified to the routine, or a method in which the message and the key value of the message are stored in a file, and an application program retrieves the message from the file based on the key value.

【0003】0003

【発明が解決しようとする問題点】従来のメッセージを
ソース・コードに直接記述する方式では、メッセージの
内容を修正する場合には、ソース・コードの修正ミスに
よる障害の発生や修正の都度に、コンパイルおよびリン
クをやり直さなければならないという問題点がある。ま
た、ソース・コード上の該当する箇所にメッセージを記
述してある場合で修正するメッセージが複数ある場合に
は、修正箇所の見落としにより再修正しなければならな
い可能性もある。更に、複数の言語圏で同一のシステム
を使用するには言語の数だけプログラムが存在すること
になり、プログラムの保守量が増大するという問題がで
てくる。
[Problems to be Solved by the Invention] In the conventional method of writing messages directly in source code, when modifying the message contents, each time a failure occurs due to a mistake in modifying the source code or is modified, There is a problem in that compiling and linking must be redone. Furthermore, if a message is written at a corresponding location on the source code and there are multiple messages to be modified, there is a possibility that the modified location may be overlooked and the message must be modified again. Furthermore, if the same system is used in multiple language areas, there will be as many programs as there are languages, creating the problem that the amount of program maintenance will increase.

【0004】メッセージとキー値をファイルに格納する
方法では、メッセージの内容を修正する時に、ソース・
コード上で修正するメッセージのキー値を確かめ、メッ
セージが格納されているファイルでそのキー値に対応す
るメッセージを修正するという二重の手間がかかる問題
がある。また、キー値を出力するメッセージとが1対1
で対応するために、似たようなメッセージの修正でも修
正するメッセージの数に比例してファイルの修正量も常
に増えるという問題がある。
[0004] In the method of storing messages and key values in files, when modifying the message contents, the source
There is a problem in that it requires double effort to check the key value of the message to be modified in the code, and then modify the message corresponding to that key value in the file where the message is stored. Also, there is a one-to-one relationship with the message that outputs the key value.
However, even when similar messages are modified, the amount of files to be modified always increases in proportion to the number of messages to be modified.

【0005】本発明の目的はアプリケーション・プログ
ラムから受取ったデータから辞書に登録された形式のメ
ッセージを生成することによりメッセージの修正や他言
語圏での使用をソース・コードの変更なしで可能にする
メッセージ生成方式を提供することにある。
An object of the present invention is to generate a message in a dictionary format from data received from an application program, thereby making it possible to modify the message and use it in other languages without changing the source code. The objective is to provide a message generation method.

【0006】[0006]

【問題点を解決するための手段】本発明のメッセージ生
成方式は、アプリケーション・プログラムから文字列デ
ータを受け取るデータ受け取り手段と、当該受け取り手
段で受け取った文字列データとデータ型辞書に登録され
たデータ型との比較により該当するメッセージ文の構造
を決定する構造決定手段と、決定された文の構造に語彙
辞書に登録された語彙またはアプリケーション・プログ
ラムから受け取ったデータ中の語彙を結び付けることに
よりメッセージを生成するメッセージ生成手段と、生成
したメッセージを出力する出力手段と、データ型辞書お
よび語彙辞書の追加・更新を行う辞書登録手段を有する
ことを特徴とする。
[Means for solving the problem] The message generation method of the present invention includes a data receiving means that receives character string data from an application program, and the character string data received by the receiving means and data registered in a data type dictionary. Structure determination means determines the structure of the corresponding message sentence by comparing it with the structure of the message, and the structure of the message is determined by linking the determined sentence structure with the vocabulary registered in the vocabulary dictionary or the vocabulary in the data received from the application program. The present invention is characterized by having a message generation means for generating a message, an output means for outputting the generated message, and a dictionary registration means for adding/updating a data type dictionary and a vocabulary dictionary.

【0007】[0007]

【実施例】次に、本発明について図面を参照して説明す
る。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, the present invention will be explained with reference to the drawings.

【0008】図1は、本発明の一実施例をしめすブロッ
ク図であり、図2は、図1中のデータ型辞書の内容をし
めす概略図であり、図3は、図1中の語彙辞書の内容を
しめす概略図であり、図4は、メッセージ生成過程の概
略図である。
FIG. 1 is a block diagram showing an embodiment of the present invention, FIG. 2 is a schematic diagram showing the contents of the data type dictionary in FIG. 1, and FIG. 3 is a block diagram showing the contents of the data type dictionary in FIG. FIG. 4 is a schematic diagram showing the contents of the message generation process.

【0009】このメッセージ生成方式は、データ受け取
り手段1と、データ変換処理制御部2と、データ型辞書
3と、語彙辞書4と、出力手段5と、辞書登録手段6か
ら構成されており、データ変換処理制御部2は、データ
格納バッファ2−1と、構造決定手段2−2と、構造格
納バッファ2−3と、メッセージ生成手段2−4と、メ
ッセージ格納バッファ2−5から構成される。
This message generation system is composed of a data receiving means 1, a data conversion processing control section 2, a data type dictionary 3, a vocabulary dictionary 4, an output means 5, and a dictionary registration means 6. The conversion processing control section 2 includes a data storage buffer 2-1, a structure determining means 2-2, a structure storing buffer 2-3, a message generating means 2-4, and a message storing buffer 2-5.

【0010】データ型辞書3は、データ型識別子3−1
と、データ型3−2と、メッセージ文の構造3−3を情
報として持っている。
[0010] The data type dictionary 3 has a data type identifier 3-1.
, a data type 3-2, and a message structure 3-3 as information.

【0011】語彙辞書4は、データ型識別子4−1と、
その識別子に対応するデータ中の語彙4−3と、その語
彙がメッセージ文の構造3−3のどこに結び付くかを示
すキー値4−2と、メッセージ文の構造3−3に結び付
ける語彙4−4を情報として持っている。
[0011] The vocabulary dictionary 4 includes a data type identifier 4-1,
A vocabulary 4-3 in the data corresponding to the identifier, a key value 4-2 indicating where in the message structure 3-3 the vocabulary is linked, and a vocabulary 4-4 linked to the message structure 3-3. have as information.

【0012】データ受け取り手段1はアプリケーション
・プログラム7からデータを受け取りデータ格納バッフ
ァ2−1に格納する。構造決定手段2−2は、データ格
納バッファ2−1からデータを取り出し、そのデータに
該当するメッセージ文の構造3−3と識別子3−1をデ
ータ型辞書3から検索し、構造格納バッファ2−3に格
納する。メッセージ生成手段2−4は、構造格納バッフ
ァ2−3に格納されているメッセージ文の構造3−3に
語彙辞書4から検索した語彙4−4を結び付けてメッセ
ージを生成し、メッセージ格納バッファ2−5に格納す
る。出力手段5は、メッセージ格納バッファ2−5から
メッセージを取り出し表示する。
The data receiving means 1 receives data from the application program 7 and stores it in the data storage buffer 2-1. The structure determining means 2-2 retrieves data from the data storage buffer 2-1, searches the data type dictionary 3 for the structure 3-3 and identifier 3-1 of the message text corresponding to the data, and stores the data in the structure storage buffer 2-1. Store in 3. The message generation means 2-4 generates a message by linking the structure 3-3 of the message sentence stored in the structure storage buffer 2-3 with the vocabulary 4-4 retrieved from the vocabulary dictionary 4, and generates a message. Store in 5. The output means 5 takes out the message from the message storage buffer 2-5 and displays it.

【0013】次に、メッセージ生成の動作について説明
する。
Next, the message generation operation will be explained.

【0014】アプリケーション・プログラム7からデー
タ受け取り手段1にデータが渡されると、データ受け取
り手段1は、そのデータをデータ格納バッファ2−1に
格納し制御を構造決定手段2−2に渡す。構造決定手段
2−2は、データ格納バッファ2−1からデータを取り
出し、データ型辞書3に登録されているデータ型3−2
と取り出したデータをそれぞれの語彙を基に比較する。 取り出したデータのデータ型が見つかると、見つかった
データ型のデータ型識別子3−1とメッセージ文の構造
3−3を構造格納バッファ2−3に格納する。図2のデ
ータ型3−2およびメッセージ文の構造3−3の記号”
$”とその後に数字の部分は、メッセージの生成時に語
彙辞書4の語彙4−4に置き換えることを示しており、
データ型の比較の時点ではこの部分はデータ格納バッフ
ァ2−1から取り出したデータと必ず一致するものとし
て処理を進める。なお、”$”の後の数字は、語彙辞書
4から語彙4−4を検索する際のキー値として用いる。 構造格納バッファには、キー値とそれに対応するデータ
中の語彙のペアも格納する。データ型の比較が終了する
と、メッセージ生成手段2−4は構造格納バッファ2−
3からデータ型識別子3−1を取り出し、それと同じ識
別子を語彙辞書4のデータ型識別子4−1から探しだし
、構造格納バッファ2−3の中のキー値と語彙のペアと
同じものがキー値4−2と語彙4−3にあるか調べ、同
じものがある場合には語彙4−3に対応する語彙4−4
をメッセージ文の構造3−3の”$”+数字の部分と置
き換える。語彙4−3の部分に”?”がある場合には、
語彙辞書4の語彙4−3に構造格納バッファ2−3中の
語彙と同じものがなければ、構造格納バッファ2−3中
の語彙をメッセージ文の構造3−3の”$”+数字部分
と置き換えて良いことを示す。これは、語彙辞書4の増
大を抑えるためにある。メッセージ文の構造3−3への
語彙の置き換えが済みメッセージを生成すると、そのメ
ッセージをメッセージ格納バッファ2−5に格納する。 語彙の置き換えができない場合には、構造格納バッファ
2−3中の次のデータ型識別子3−1について同様な処
理を繰り返す。メッセージ格納バッファ2−5へメッセ
ージを格納するとメッセージ生成手段2−4は出力手段
5へ制御を渡す。出力手段5は、メッセージ格納バッフ
ァ2−5からメッセージを取り出し画面8に表示する。 メッセージに変更や追加が生じた場合には、辞書登録手
段6によってデータ型辞書3および語彙辞書4の情報の
変更や追加を行う。
When data is passed from the application program 7 to the data receiving means 1, the data receiving means 1 stores the data in the data storage buffer 2-1 and passes control to the structure determining means 2-2. The structure determining means 2-2 takes out data from the data storage buffer 2-1 and converts it into a data type 3-2 registered in the data type dictionary 3.
and compare the retrieved data based on each vocabulary. When the data type of the retrieved data is found, the data type identifier 3-1 of the found data type and the message structure 3-3 are stored in the structure storage buffer 2-3. Symbols for data type 3-2 and message structure 3-3 in Figure 2
$” and the number after it indicates that it will be replaced with vocabulary 4-4 from vocabulary dictionary 4 when generating the message.
At the time of data type comparison, processing proceeds on the assumption that this portion always matches the data taken out from the data storage buffer 2-1. Note that the number after "$" is used as a key value when searching vocabulary 4-4 from vocabulary dictionary 4. The structure storage buffer also stores pairs of key values and their corresponding vocabularies in the data. When the data type comparison is completed, the message generation means 2-4 sends the structure storage buffer 2-
The data type identifier 3-1 is extracted from 3, the same identifier is searched from the data type identifier 4-1 of the vocabulary dictionary 4, and the key value is the same as the key value and vocabulary pair in the structure storage buffer 2-3. Check whether there is the same thing in Vocabulary 4-2 and Vocabulary 4-3, and if there is the same thing, select Vocabulary 4-4 that corresponds to Vocabulary 4-3.
Replace with the "$" + number part of message structure 3-3. If there is a “?” in the vocabulary 4-3,
If the vocabulary 4-3 of the vocabulary dictionary 4 does not have the same vocabulary as the vocabulary in the structure storage buffer 2-3, the vocabulary in the structure storage buffer 2-3 is used as the "$" + number part of the structure 3-3 of the message sentence. Indicates that it can be replaced. This is to suppress the increase in the vocabulary dictionary 4. After the vocabulary has been replaced with the message sentence structure 3-3 and a message is generated, the message is stored in the message storage buffer 2-5. If the vocabulary cannot be replaced, the same process is repeated for the next data type identifier 3-1 in the structure storage buffer 2-3. After storing the message in the message storage buffer 2-5, the message generation means 2-4 passes control to the output means 5. The output means 5 takes out the message from the message storage buffer 2-5 and displays it on the screen 8. When a change or addition occurs to a message, the dictionary registration means 6 changes or adds information in the data type dictionary 3 and the vocabulary dictionary 4.

【0015】[0015]

【発明の効果】以上説明したように本発明は、データ形
式とそれに対応するメッセージの構造をプログラムとは
別に記述し、プログラムとメッセージとを切り離すこと
により、出力するメッセージに変更が生じた場合でも、
プログラム本体を変更せずにすむ効果がある。更に、デ
ータ型辞書と語彙辞書を日本語や英語、フランス語など
の言語別に作成することにより、使用する辞書の変更で
1つのプログラムで複数の言語に対応したシステムにす
ることが可能である。
[Effects of the Invention] As explained above, the present invention describes the data format and the structure of the corresponding message separately from the program, and by separating the program and the message, even if the output message changes. ,
This has the effect of not requiring changes to the program itself. Furthermore, by creating data type dictionaries and vocabulary dictionaries for each language such as Japanese, English, and French, it is possible to create a system that supports multiple languages with one program by changing the dictionary used.

【0016】また、データ型辞書の中にデータ型とメッ
セージ文の構造の対応が登録されているのでソース・コ
ード上で確かめなくても修正するメッセージがどれかを
知ることができるし、データ型と出力するメッセージが
1対多で対応するので修正するメッセージの種類によっ
ては、修正するメッセージの数に比べ辞書の修正量は少
なくてすむ場合もある。
[0016] Furthermore, since the correspondence between data types and message structure is registered in the data type dictionary, it is possible to know which message to modify without checking the source code. Since there is a one-to-many correspondence between messages to be output, depending on the type of message to be modified, the amount of modification to the dictionary may be small compared to the number of messages to be modified.

【図面の簡単な説明】[Brief explanation of the drawing]

【図1】本発明における一実施例をしめすブロック図。FIG. 1 is a block diagram showing one embodiment of the present invention.

【図2】図1中のデータ型辞書の内容をしめす概略図。FIG. 2 is a schematic diagram showing the contents of the data type dictionary in FIG. 1;

【図3】図1中の語彙辞書の内容をしめす概略図。FIG. 3 is a schematic diagram showing the contents of the vocabulary dictionary in FIG. 1.

【図4】メッセージ生成過程の概略図。FIG. 4 is a schematic diagram of the message generation process.

【符号の説明】[Explanation of symbols]

1    データ受け取り手段 2    データ変換処理制御部 2−1    データ格納バッファ 2−2    構造決定手段 2−3    構造格納バッファ 2−4    メッセージ生成手段 2−5    メッセージ格納バッファ3    デー
タ型辞書 3−1    データ型識別子 3−2    データ型 3−3    メッセージ文の構造 4    語彙辞書 4−1    データ型識別子 4−2    語彙のキー値 4−3    アプリケーション・プログラムから受け
取るデータ中に語彙 4−4    メッセージとして出力する語彙5   
 出力手段 6    辞書登録手段 7    アプリケーション・プログラム8    メ
ッセージを表示する画面 9    辞書に登録する情報を打鍵するキーボード1
0−1および10−2    アプリケーション・プロ
グラムから受け取るデータの例 11    10−1および10−2のデータのデータ
型の例
1 Data receiving means 2 Data conversion processing control section 2-1 Data storage buffer 2-2 Structure determining means 2-3 Structure storage buffer 2-4 Message generating means 2-5 Message storage buffer 3 Data type dictionary 3-1 Data type identifier 3-2 Data type 3-3 Structure of message sentence 4 Vocabulary dictionary 4-1 Data type identifier 4-2 Vocabulary key value 4-3 Vocabulary in data received from application program 4-4 Vocabulary output as message 5
Output means 6 Dictionary registration means 7 Application program 8 Screen 9 for displaying messages Keyboard 1 for typing information to be registered in the dictionary
0-1 and 10-2 Example of data received from application program 11 Example of data type of data in 10-1 and 10-2

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】  アプリケーション・プログラムから文
字列データを受け取るデータ受け取り手段と、当該受け
取り手段で受け取った文字列データとデータ型辞書に登
録されたデータ型との比較により該当するメッセージ文
の構造を決定する構造決定手段と、決定された文の構造
に語彙辞書に登録された語彙またはアプリケーション・
プログラムから受け取ったデータ中の語彙を結び付ける
ことによりメッセージを生成するメッセージ生成手段と
、生成したメッセージを出力する出力手段と、データ型
辞書および語彙辞書の追加・更新を行う辞書登録手段を
有することを特徴とするメッセージ生成方式。
Claim 1: A data receiving means that receives character string data from an application program; and determining the structure of a corresponding message sentence by comparing the character string data received by the receiving means with a data type registered in a data type dictionary. structure determination means, and the structure of the determined sentence is added to the vocabulary registered in the vocabulary dictionary or the application
The present invention includes a message generation means for generating a message by linking vocabulary in data received from a program, an output means for outputting the generated message, and a dictionary registration means for adding/updating a data type dictionary and a vocabulary dictionary. Characteristic message generation method.
JP3144120A 1991-05-21 1991-05-21 Message generating system Pending JPH04344523A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3144120A JPH04344523A (en) 1991-05-21 1991-05-21 Message generating system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3144120A JPH04344523A (en) 1991-05-21 1991-05-21 Message generating system

Publications (1)

Publication Number Publication Date
JPH04344523A true JPH04344523A (en) 1992-12-01

Family

ID=15354660

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3144120A Pending JPH04344523A (en) 1991-05-21 1991-05-21 Message generating system

Country Status (1)

Country Link
JP (1) JPH04344523A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805888A (en) * 1993-11-25 1998-09-08 Fujitsu Limited Identifier dictionary-generating device
JP2007087016A (en) * 2005-09-21 2007-04-05 Fuji Xerox Co Ltd Display device and character string database redefinition method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6386019A (en) * 1986-09-30 1988-04-16 Ricoh Co Ltd Message producing device
JPH0264757A (en) * 1988-08-30 1990-03-05 Nec Corp Message text editing control system
JPH02247720A (en) * 1989-03-20 1990-10-03 Fuji Xerox Co Ltd Various languages display system
JPH04273519A (en) * 1991-02-28 1992-09-29 Nec Software Ltd End batch management system for message

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6386019A (en) * 1986-09-30 1988-04-16 Ricoh Co Ltd Message producing device
JPH0264757A (en) * 1988-08-30 1990-03-05 Nec Corp Message text editing control system
JPH02247720A (en) * 1989-03-20 1990-10-03 Fuji Xerox Co Ltd Various languages display system
JPH04273519A (en) * 1991-02-28 1992-09-29 Nec Software Ltd End batch management system for message

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805888A (en) * 1993-11-25 1998-09-08 Fujitsu Limited Identifier dictionary-generating device
JP2007087016A (en) * 2005-09-21 2007-04-05 Fuji Xerox Co Ltd Display device and character string database redefinition method
JP4735155B2 (en) * 2005-09-21 2011-07-27 富士ゼロックス株式会社 Display device and character string database redefinition method

Similar Documents

Publication Publication Date Title
US9633010B2 (en) Converting data into natural language form
JPS62163173A (en) Mechanical translating device
JPH03202954A (en) Machine translation device
US9495638B2 (en) Scalable, rule-based processing
JPH0351022B2 (en)
CN116360794A (en) Database language analysis method, device, computer equipment and storage medium
JPH0344764A (en) Mechanical translation device
JPH04344523A (en) Message generating system
JPS6190269A (en) Translation system
JPH08115330A (en) Method for retrieving similar document and device therefor
JPS59736A (en) System for analyzing syntax
JPS60195664A (en) Kana-to-kanji-converting system
JP3197110B2 (en) Natural language analyzer and machine translator
JP3454895B2 (en) Kana-Kanji conversion method
JPH03122717A (en) Device for forming program comment sentence
JPS6190268A (en) Translation system
JP3316884B2 (en) Language translator
JPH0443308B2 (en)
JPH04119467A (en) Natural language translating method
JPS62209659A (en) Correcting device for japanese sentence
JPS60178575A (en) Japanese processor
JPS6051950A (en) Program outputting system
JPH0785040A (en) Inscription nonuniformity detecting method and kana/ kanji converting method
JPS60189573A (en) Character convertor
JPH05342258A (en) Natural language processing system