JPH1031582A - Natural language programming system based on object orientation - Google Patents
Natural language programming system based on object orientationInfo
- Publication number
- JPH1031582A JPH1031582A JP8186193A JP18619396A JPH1031582A JP H1031582 A JPH1031582 A JP H1031582A JP 8186193 A JP8186193 A JP 8186193A JP 18619396 A JP18619396 A JP 18619396A JP H1031582 A JPH1031582 A JP H1031582A
- Authority
- JP
- Japan
- Prior art keywords
- unit
- natural language
- message
- sentence
- processing request
- 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
Links
Landscapes
- Stored Programmes (AREA)
Abstract
(57)【要約】
【課題】 オブジェクト指向処理システムに対して日本
語を用いて入力を行いたい。
【解決手段】 テーブル登録部69がオブジェクト名と
メソッド名に対応する語句を予め変換テーブル82に登
録しておく。ユーザAが日本語文60を入力する。変換
部81は、変換テーブル82を用いて日本語文60をメ
ッセージ50に変換する。メッセージ50は、オブジェ
クト20に送られ実行される。
(57) [Summary] [PROBLEMS] To input to an object-oriented processing system using Japanese. A table registration unit registers in advance a phrase corresponding to an object name and a method name in a conversion table. User A inputs Japanese sentence 60. The conversion unit 81 converts the Japanese sentence 60 into the message 50 using the conversion table 82. The message 50 is sent to the object 20 and executed.
Description
【0001】[0001]
【発明の属する技術分野】この発明は、オブジェクト指
向に基づく自然言語プログラミングシステムに関するも
のである。特に、日本語等の自然言語によるメッセージ
を、オブジェクトに送信することができるシステムに関
するものである。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a natural language programming system based on object orientation. In particular, the present invention relates to a system capable of transmitting a message in a natural language such as Japanese to an object.
【0002】[0002]
【従来の技術】図24は、従来のオブジェクト指向処理
システムの構成を示す図である。オブジェクト指向処理
システムは、パーソナルコンピュータやワークステーシ
ョン等の色々なハードウェア94の上で動作するシステ
ムである。異なるハードウェア94に対して、オペレー
ティングシステム(OS)93をインプリメントするこ
とにより、共通の動作環境90を動作可能にしている。
この動作環境90には、予めクラスライブラリ92が登
録されており、ユーザは、クラスライブラリ92を用い
てアプリケーションモデル91を開発する。ユーザは、
開発されたアプリケーションモデル91に対してメッセ
ージ50を入力することにより、所望の処理を行わせ
る。メッセージ50は、アプリケーションモデル91及
びクラスライブラリ92が理解することができる所定の
形式のメッセージである。2. Description of the Related Art FIG. 24 is a diagram showing a configuration of a conventional object-oriented processing system. The object-oriented processing system is a system that operates on various hardware 94 such as a personal computer and a workstation. By implementing an operating system (OS) 93 for different hardware 94, a common operating environment 90 can be operated.
A class library 92 is registered in the operating environment 90 in advance, and a user develops an application model 91 using the class library 92. The user
A desired process is performed by inputting the message 50 to the developed application model 91. The message 50 is a message of a predetermined format that can be understood by the application model 91 and the class library 92.
【0003】図25は、オブジェクト間のメッセージの
送受信を示す図である。以下、図24及び図25を用い
てオブジェクト指向技術の主要な概念について「オブジ
ェクト指向アプローチ−その全貌−」(デビッド A・
テイラー著、増永良文監訳、寺島哲史訳、1993年8
月25日、P115〜117)に記載された記述を引用
してオブジェクト、メッセージ、クラスの3つの概念に
ついて説明する。FIG. 25 is a diagram showing transmission and reception of messages between objects. Hereinafter, the main concept of the object-oriented technology will be described with reference to FIG. 24 and FIG.
Taylor, translated by Yoshifumi Masunaga, translated by Tetsushi Terashima, August 1993
The three concepts of the object, the message, and the class will be described with reference to the description described on pages 115 to 117 on March 25.
【0004】(1)オブジェクト オブジェクト指向アプローチでの体系化の基本単位がオ
ブジェクトである。オブジェクト(object)は、
関連するデータ項目とメソッド(method)と呼ば
れるそのデータ項目処理用のプロシージャの集まりとし
てのソフトウェア「パケット」である。オブジェクト内
のデータは、オブジェクトのメソッドを通してのみアク
セス可能であり、現行値の報告や計算の実行といった定
常的作業の全ては、メソッドによって行われる。このよ
うな方式は、カプセル化(encapsulatio
n)と呼ばれ、他のオブジェクトによるデータ破壊を防
止し、システム内の他の部分に対して下位のレベルの処
理の詳細を隠蔽する。新しい型のオブジェクトは、一旦
定義すれば、数値、日付その他基本的な種類の情報を扱
う組み込みデータ型と同様に、プログラム内の基本的な
データ型として利用できる。これにより、必要に応じて
新たな高レベルのデータ構造を作成し、他のプログラム
からも利用することができる。これはデータの抽象化
(data abstraction)と呼ばれる。デ
ータの抽象化により、プログラマは、言語固有のデータ
型を離れて、解決すべき問題に取り組めるようになるこ
とから、これがオブジェクト指向アプローチの中心的な
ものとなっている。(1) Object The basic unit of systematization in the object-oriented approach is an object. The object is
A software "packet" as a collection of related data items and procedures for processing the data items, called methods. The data in an object is accessible only through the object's methods, and all routine work such as reporting current values and performing calculations is performed by methods. Such a scheme is known as encapsulatio
n), which prevents data corruption by other objects and hides the details of lower-level processing from other parts of the system. Once defined, new types of objects can be used as basic data types in programs, as well as built-in data types that handle numbers, dates, and other basic types of information. As a result, a new high-level data structure can be created as needed, and can be used by other programs. This is called data abstraction. This is central to the object-oriented approach because data abstractions allow programmers to move away from language-specific data types and address problems that need to be solved.
【0005】(2)メッセージ オブジェクトは、メッセージを介して互いにやりとりを
行う。メッセージ(message)の基本形は、受け
手のオブジェクトの名前とそのオブジェクトの持ってい
る1つのメソッドの名前である。メッセージとは、受け
手のオブジェクトに指示したメソッドを実行し、その動
作結果を返却することを要求するものである。同じ名前
のメソッドを複数のオブジェクトが保有でき、それをそ
のオブジェクト独自のニーズに応じて実装することがで
きる。このようにして、メッセージの処理方法や受け手
のオブジェクトを考慮することなく、多くの異なったオ
ブジェクトに所与のメッセージを送ることができる。共
通のメッセージインタフェースを使用して、処理の詳細
を隠蔽することをポリモルフィズムと呼ぶ。ポリモルフ
ィズム(polymorphism)は、新種のオブジ
ェクトを既存プロシージャの修正なしに稼働中のシステ
ムに追加できることから、オブジェクト指向アプローチ
を非常に柔軟なものとしている。(2) Message Objects communicate with each other via messages. The basic form of a message is the name of the recipient object and the name of one of the methods of that object. A message is a request for executing a method instructed to a receiver object and returning the operation result. Multiple objects can have a method with the same name, and can be implemented according to the unique needs of that object. In this way, a given message can be sent to many different objects without regard to how the message is processed or the recipient object. Hiding processing details using a common message interface is called polymorphism. Polymorphism makes the object-oriented approach very flexible because new kinds of objects can be added to a running system without modifying existing procedures.
【0006】(3)クラス オブジェクト指向プログラムでは、クラスを利用するこ
とによって共通のオブジェクト型を繰り返し利用するこ
とができる。クラス(class)とは、同じ特性を持
つオブジェクトを代表する汎用的なプロトタイプであ
る。あるクラスに属するオブジェクトは、そのクラスの
インスタンス(instance)と呼ばれる。クラス
を利用することで、非常に効率的なオブジェクトの定義
が行える。あるクラスでのメソッドと変数の定義は、ク
ラス定義にて1回だけ行えば良く、クラスのインスタン
ス毎に繰り返して行う必要はない。インスタンスは、変
数値のみを保有する。クラスを独立して定義することは
可能だが、通常はクラスは、他のクラスの特例、即ち、
サブクラス(subclass)として定義する。継承
(inheritance)という働きによって、ある
クラスのサブクラスの全ては、そのクラスのメソッドと
変数を利用できる。継承によりクラスのメカニズムは、
はるかに効率的なものとなる。より大きなオブジェクト
グループ共通の特性となる振る舞いは、上位クラスの定
義で1回プログラミングすればすむ。サブクラスで特定
の事態に対処したい場合には、その振る舞いをちょっと
追加・修正することで足りる。サブクラスに、上位の特
性が積み重なって継承されていく。その結果、作成され
る木状の構造は、クラス階層(class hiera
rchy)と呼ばれる。言語によっては、複数のスーパ
クラスの特性の継承が許される。これは、多重継承(m
ultiple inheritance)と呼ぶ。こ
の特性には、複数から重乗して影響が及ぶというややこ
しさがあるが、より柔軟な関連づけが可能となる。以上
が前述した文献のP115〜P117に記載されたオブ
ジェクト指向技術のオブジェクトとメッセージとクラス
の概念である。(3) Class In an object-oriented program, a common object type can be repeatedly used by using a class. A class is a general purpose prototype representing objects with the same characteristics. Objects belonging to a class are called instances of the class. By using classes, very efficient object definition can be performed. The definition of a method and a variable in a certain class need only be performed once in the class definition, and need not be repeated for each instance of the class. An instance holds only variable values. Although it is possible to define a class independently, usually a class is a special case of another class, namely
Defined as a subclass. By virtue of inheritance, all subclasses of a class can use the methods and variables of that class. By inheritance, the class mechanism is
It will be much more efficient. Behavior that becomes a property common to a larger object group can be programmed once in the definition of the upper class. If a subclass wants to deal with a particular situation, it is enough to add or modify its behavior a bit. Higher-level characteristics are accumulated and inherited by subclasses. As a result, the tree-like structure created is a class hierarchy (class hiera).
rchy). Some languages allow inheritance of the properties of multiple superclasses. This is due to multiple inheritance (m
It is referred to as "multiple inheritance". Although this characteristic has the confusing effect of being multiplicatively influenced by a plurality of characteristics, a more flexible association is possible. The above is the concept of the object, the message, and the class of the object-oriented technology described in P115 to P117 of the above-mentioned document.
【0007】オブジェクト指向処理システムを効果的に
構築する最も有効な方法は、クラスライブラリ92に登
録されたクラスを再利用することである。クラスライブ
ラリ92に登録されたクラスの数は、例えば、1300
クラス以上及びこれらのクラスの内容及び使用方法を完
全に理解するためには、非常に多くの経験と時間が必要
であった。The most effective way to effectively construct an object-oriented processing system is to reuse the classes registered in the class library 92. The number of classes registered in the class library 92 is, for example, 1300
A great deal of experience and time was required to fully understand the contents of the classes and how to use them.
【0008】前述したように、システムを効率よく構築
するためには、既にクラスライブラリ92に登録された
オブジェクトを効果的に再利用する必要がある。その再
利用の方法の1つとしてアダプタというオブジェクトが
存在する。図26及び図27は、アダプタを説明する図
である。アダプタは、一方のオブジェクトが出力するメ
ッセージを他方のオブジェクトが理解することができな
い場合に、一方のオブジェクトが出力したメッセージを
他方のオブジェクトが理解することができるメッセージ
に変換するオブジェクトである。図26及び図27の場
合は、ViewObject15が出力するメッセージ
をModelObject17が理解できない場合を示
している。Adaptor16は、ViewObjec
t15が出力したメッセージ51、メッセージ53を入
力してメッセージ52、メッセージ54に変換してMo
delObject17に出力する。その際、Adap
tor16にあるメソッド25は、長さをセンチメート
ルからインチに変換する計算を行っている。また、メソ
ッド27は、長さをインチからセンチメートルに変換す
る計算を行っている。このように、Adaptor16
は、2つのオブジェクトの間に存在し、メッセージの変
換を行う役目を持っている。As described above, in order to efficiently construct a system, it is necessary to effectively reuse objects already registered in the class library 92. An object called an adapter exists as one of the methods of reuse. 26 and 27 are diagrams illustrating the adapter. An adapter is an object that converts a message output by one object into a message that can be understood by the other object when the message output by one object cannot be understood by the other object. FIGS. 26 and 27 show the case where the ModelObject 17 cannot understand the message output by the ViewObject 15. Adapter16 is ViewObject
The message 51 and the message 53 output at t15 are input, converted into the message 52 and the message 54, and
Output to delObject17. At that time, Adap
Method 25 at tor16 performs a calculation that converts length from centimeters to inches. The method 27 performs a calculation for converting the length from inches to centimeters. Thus, Adapter16
Exists between two objects and has a role of performing message conversion.
【0009】[0009]
【発明が解決しようとする課題】従来のオブジェクト指
向技術に基づいてシステムを開発する場合は、例えば、 (1)現実のモデルを情報処理のモデルとしてとらえ
る。 (2)システム全体に影響する仕組みを設計する。 (3)実装方法を決める。 (4)クラスの設計を行う。 という設計段階を経て、設計段階で得られたクラス仕様
に基づいて既存のクラスの再利用を図りながら、新規に
クラスをプログラミングする。従って、オブジェクト指
向技術を用いてシステムの開発を行う場合には、最終的
にオブジェクト指向に基づくプログラミングを行わなけ
ればならない。このプログラミングは、オブジェクト指
向のプログラミング言語を用いて行うことになる。従っ
て、通常のプログラミング言語を用いてプログラムを開
発する場合と同様に、オブジェクト指向処理システムに
おけるプログラムも特別なオブジェクト指向プログラミ
ング言語を熟知したプログラマでなければ作成すること
ができないという問題があった。また、そのような言語
の仕様を理解するものでなければプログラムに記載され
た内容を理解することができないという問題があった。
例えば、企業の経営者や管理者はプログラムに記載され
た内容を理解することができないし、又、実際にシステ
ムを管理運用している者でさえもプログラムに記載され
た内容を理解することができないという問題があった。When a system is developed based on the conventional object-oriented technology, for example, (1) a real model is taken as a model for information processing. (2) Design a mechanism that affects the entire system. (3) Determine the mounting method. (4) Design the class. After the design stage, new classes are programmed while reusing existing classes based on the class specifications obtained in the design stage. Therefore, when developing a system using object-oriented technology, it is necessary to finally perform programming based on object-oriented. This programming is performed using an object-oriented programming language. Therefore, as in the case of developing a program using a normal programming language, there is a problem that a program in an object-oriented processing system can be created only by a programmer who is familiar with a special object-oriented programming language. In addition, there is a problem that the contents described in the program cannot be understood unless the language specification is understood.
For example, corporate managers and managers cannot understand the contents described in the program, and even those who actually manage and operate the system can understand the contents described in the program. There was a problem that it was not possible.
【0010】また、従来のオブジェクト指向処理システ
ムにおいては、クラスライブラリ92に登録されたオブ
ジェクトを熟知した上でなければ、効果的にアプリケー
ションモデル91を作成することができないという問題
があった。Further, in the conventional object-oriented processing system, there is a problem that the application model 91 cannot be effectively created unless the objects registered in the class library 92 are thoroughly understood.
【0011】また、オブジェクト間のメッセージを正し
く生成、或いは、入力しなければ、メッセージの送信エ
ラーが発生し、処理が行えないという問題点があった。Further, if a message between objects is not generated or input correctly, a message transmission error occurs and processing cannot be performed.
【0012】また、オブジェクト名やメソッド名は、英
語を元にして作られているため、英語を母国語とするユ
ーザ以外のユーザにとっては、使いにくいという問題が
あった。Also, since the object names and method names are created based on English, there is a problem that it is difficult to use for users other than users whose native language is English.
【0013】この発明は、以上のような問題点を解決す
るためになされたものであり、オブジェクト指向に基づ
くプログラミング言語を用いなくても、オブジェクト指
向技術に基づくシステムを開発することができるプログ
ラミングシステムを提供することを目的とする。SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and a programming system capable of developing a system based on object-oriented technology without using a programming language based on object-oriented technology. The purpose is to provide.
【0014】特に、プログラミングという特殊な作業を
間に介することなく、システム分析の結果を自然言語で
記述したものや現実のモデルを自然言語で記述したもの
をそのまま利用することによりオブジェクト指向に基づ
くシステムを開発することができるプログラミングシス
テムを提供することを目的とする。In particular, a system based on an object-oriented system can be used by directly using a result of a system analysis described in a natural language or a description of a real model in a natural language without intervening a special task of programming. It is an object of the present invention to provide a programming system capable of developing a program.
【0015】また、この発明は、クラスライブラリに登
録されたオブジェクトを熟知しなくても、オブジェクト
指向処理システムを使いこなすことができるシステムを
提供することを目的とする。It is another object of the present invention to provide a system that can use an object-oriented processing system without knowing objects registered in a class library.
【0016】また、この発明は、自然言語によるメッセ
ージの送信を可能とするオブジェクト指向に基づくシス
テムを提供することを目的とする。特に、日本語文を入
力することが可能なシステムを得ることを目的とする。Another object of the present invention is to provide an object-oriented system which enables transmission of a message in a natural language. In particular, it is an object to obtain a system capable of inputting Japanese sentences.
【0017】[0017]
【課題を解決するための手段】この発明に係るオブジェ
クト指向に基づく自然言語プログラミングシステムは、
メソッドとデータをカプセル化したオブジェクト間でメ
ッセージを送受信して処理を行うオブジェクト指向処理
システムにおいて、任意の語句を用いた処理要求文を入
力して、入力した処理要求文を所定の形式のメッセージ
に翻訳する翻訳部を備え、上記翻訳部は、オブジェクト
の名前とメソッドの名前に対応して処理要求文に用いら
れる語句を登録する変換テーブルと、上記変換テーブル
を検索して、処理要求文を少なくともオブジェクトの名
前とメソッドの名前とから構成されるメッセージに変換
する変換部とを備えたことを特徴とする。A natural language programming system based on object orientation according to the present invention comprises:
In an object-oriented processing system that performs processing by transmitting and receiving messages between objects encapsulating methods and data, a processing request sentence using an arbitrary word is input, and the input processing request sentence is converted into a message of a predetermined format. A translation unit that translates the phrase used in the processing request sentence in correspondence with the name of the object and the name of the method, and searches the conversion table for at least the processing request sentence. A conversion unit configured to convert the message into a message composed of an object name and a method name.
【0018】上記翻訳部は、更に、複数パターンの変換
テーブルを登録するテーブル登録部を備えるとともに、
上記変換部は、複数のパターンの中から1つのパターン
を選択して使用することを特徴とする。The translation unit further includes a table registration unit for registering a conversion table of a plurality of patterns.
The converter is characterized in that one pattern is selected from a plurality of patterns and used.
【0019】上記オブジェクト指向処理に基づく自然言
語プログラミングシステムは、更に、任意の語句を用い
た処理要求文を入力するインタフェース部を備え、上記
インタフェース部は、上記翻訳部が処理要求文をメッセ
ージに翻訳することができない場合に、処理要求文の入
力者と対話することが可能な対話部を備え、上記翻訳部
は、対話部の対話結果に基づいて上記変換テーブルに対
して変換可能な語句を追加するテーブル語句追加部を備
えたことを特徴とする。The natural language programming system based on the object-oriented processing further includes an interface unit for inputting a processing request sentence using an arbitrary word, and the interface unit is configured such that the translating unit translates the processing request sentence into a message. If it is not possible to do so, it has a dialogue unit capable of interacting with the input person of the processing request sentence, and the translation unit adds a convertible word to the conversion table based on the dialogue result of the dialogue unit And a table phrase adding unit for performing the processing.
【0020】上記インタフェース部は、上記変換テーブ
ルに登録された語句から生成された単語テーブルと、処
理要求文を音声で入力するとともに、上記単語テーブル
を用いて処理要求文を音声認識する音声認識部とを備え
たことを特徴とする。The interface unit inputs a word table generated from the words registered in the conversion table and a processing request sentence by voice, and uses the word table to recognize the processing request sentence by voice. And characterized in that:
【0021】上記翻訳部は、モデル毎に変換テーブルを
保持し、上記インタフェース部は、モデル毎に単語テー
ブルを保持することを特徴とする。The translation unit holds a conversion table for each model, and the interface unit holds a word table for each model.
【0022】上記インタフェース部は、1つのモデルに
対して複数の単語テーブルを保持し、1つの単語テーブ
ルを選択して使用することを特徴とする。The interface unit is characterized in that a plurality of word tables are held for one model, and one word table is selected and used.
【0023】上記処理要求文は、自然言語による文であ
ることを特徴とする。The processing request sentence is a sentence in a natural language.
【0024】上記自然言語による文は、日本語文である
ことを特徴とする。The sentence in the natural language is a Japanese sentence.
【0025】[0025]
実施の形態1.オブジェクト指向プログラムは、「オブ
ジェクトに対しメッセージを与える」というコマンドの
繰り返しで構成される。このコマンドは、アクションを
機能レベルのみで表現するものであるため、うまく工夫
すると自然な日常言語スタイルで記述することができ
る。例えば、「今日が何曜日であるか」と問い合わせる
場合、 1.「日にち(Date)」オブジェクトに「今日」問
い合わせメッセージを与え、「今日の日にち」オブジェ
クトを得る。 2.その結果得るオブジェクト「今日の日にち」に「曜
日」問い合わせメッセージを与え、「今日の日にちの曜
日」オブジェクトを得る。 という2個のコマンドのシーケンスの形を取るのがオブ
ジェクト指向表現の基本スタイルである。これは、 A−1. 日にちは今日は何日か? A−2. その日にちは何曜日か? (以下、これをパターンAという)という記述シーケン
スの形を取れば、日常言語スタイルとなる。そして、ま
た、後者の記述の仕方は、いろいろなやり方ができるこ
とが望ましい。例えば、代りに、 B−1. 日付けは本日は何月何日か? B−2. その日付けの曜日は? (以下、これをパターンBという)という問い方もあっ
てよい。このように、言語構造の骨格はオブジェクト指
向に従いながら、実際の記述の仕方は日常言語スタイル
を含め、ユーザの好みに合わせ自由に定義できる仕組み
が本発明の大きな特徴である。Embodiment 1 FIG. An object-oriented program is configured by repeating a command of “giving a message to an object”. Since this command expresses the action only at the function level, it can be described in a natural everyday language style if properly devised. For example, when inquiring "what day is today?" Give the "Date" object a "Today" query message and get the "Today's Date" object. 2. The resulting object "Today's Day" is given a "Day of the Week" query message to get the "Day of the Day Today" object. The basic style of object-oriented expression takes the form of a sequence of two commands. This is A-1. What is the date today? A-2. What day is that day? Taking the form of a description sequence (hereinafter referred to as a pattern A), it becomes a daily language style. Also, it is desirable that the latter can be described in various ways. For example, instead, B-1. What is the date today? B-2. What day of the week is that day? (Hereinafter, this is referred to as a pattern B). As described above, a major feature of the present invention is a mechanism in which the actual description method can be freely defined according to the user's preference, including the everyday language style, while the skeleton of the language structure follows the object orientation.
【0026】以下、この実施の形態について図を用いて
説明する。図1は、この発明のオブジェクト指向に基づ
く自然言語プログラミングシステムの構成を示す図であ
る。従来と異なる点は、翻訳部80を備えたことによ
り、オブジェクトに対してメッセージの代わりに、日本
語文を送信することができる点である。なお、この実施
の形態では、日本語を例にして説明するが、韓国語、中
国語、モンゴル語等その他の自然言語であっても構わな
い。Hereinafter, this embodiment will be described with reference to the drawings. FIG. 1 is a diagram showing a configuration of a natural language programming system based on object orientation according to the present invention. The difference from the related art is that the provision of the translation unit 80 allows a Japanese sentence to be transmitted to an object instead of a message. In this embodiment, Japanese is described as an example, but other natural languages such as Korean, Chinese, and Mongolian may be used.
【0027】図2は、翻訳部80の構成を示す図であ
る。テーブル登録部69は、オブジェクト名に対応する
1以上の日本語を変換テーブルに登録する。また、メソ
ッド名に対応する1以上の日本語を登録する。変換テー
ブル82には、テーブル登録部69により、オブジェク
ト名及びメソッド名に対応した日本語が予め登録されて
いる。翻訳部80は、日本語文60を入力する。日本語
文60は、変換部81において、メッセージ50に変換
される。変換部81は、日本語文60をメッセージ50
に変換する際、変換テーブル82を参照する。FIG. 2 is a diagram showing the configuration of the translation unit 80. The table registration unit 69 registers one or more Japanese characters corresponding to the object name in the conversion table. Also, one or more Japanese characters corresponding to the method name are registered. In the conversion table 82, Japanese corresponding to the object name and the method name is registered in advance by the table registration unit 69. The translation unit 80 inputs the Japanese sentence 60. The conversion section 81 converts the Japanese sentence 60 into the message 50. The conversion unit 81 converts the Japanese sentence 60 into the message 50
At the time of conversion, the conversion table 82 is referred to.
【0028】図3は、メッセージ51,52とそのメッ
セージ51,52を受信するDateオブジェクト10
を示す図である。FIG. 3 shows messages 51 and 52 and a Date object 10 for receiving the messages 51 and 52.
FIG.
【0029】図4は、変換テーブル82の具体例を示す
図である。前述したように、変換テーブル82は、オブ
ジェクト名及びメソッド名に対して対応する日本語を登
録しているテーブルである。図4に示す変換テーブル8
2は、テーブル登録部69によりユーザA,B,C毎に
オブジェクト名及びメソッド名に対応する日本語を登録
できるようになっている。従って、各ユーザは、自分が
用いる日本語を用いて変換テーブル82を作成すること
ができる。以下、ここでは、前述したパターンAという
日本語記述と、変換テーブル82のパターン1の登録と
は、ユーザAが用いるものとし、前述したパターンBの
日本語記述と、変換テーブル82のパターン2の登録と
は、ユーザBが用いるものとする。FIG. 4 is a diagram showing a specific example of the conversion table 82. As described above, the conversion table 82 is a table in which Japanese corresponding to the object name and the method name is registered. Conversion table 8 shown in FIG.
2, the table registration unit 69 can register Japanese corresponding to the object name and the method name for each of the users A, B, and C. Therefore, each user can create the conversion table 82 using the Japanese language that he or she uses. Hereinafter, the Japanese description of the pattern A and the registration of the pattern 1 of the conversion table 82 are used by the user A, and the Japanese description of the pattern B and the pattern 2 of the conversion table 82 are used here. The registration is used by the user B.
【0030】図5及び図6は、ユーザAがパターンAの
日本語を入力した場合の変換部81の動作を示す図であ
る。まず、変換部81は、変換テーブル82を検索する
ことによりユーザAが変換テーブル82のパターン1を
用いることを判断する。図5に示すように、パターンA
のA−1の記述は、変換部により主部と述部に分解さ
れ、主部からオブジェクト名が判定され、述部からメソ
ッド名が判定され、最終的にメッセージ51が生成され
る。また、図6に示すように、パターンAのA−2の記
述は、変換部81により主部と述部に分解され、主部か
らオブジェクト名が判定され、述部からメソッド名が判
定され、最終的にメッセージ52が作成される。図6に
おいて、「その」は、直前に生成されたインスタンス
「日にち」を指すものであり、「その」は、インスタン
スを指す特別な用語として用いられる。また、図示して
いないが、ユーザBがパターンBを入力した場合も、図
5及び図6に示すような変換部81の動作により、最終
的にはメッセージ51,52が生成される。ここで、図
5に示すメッセージ51により生成されたオブジェクト
を「今日の日にち」とすると、その「今日の日にち」オ
ブジェクトに対してメッセージ52が送信される。その
「今日の日にち」オブジェクトは、「日にち」の下位の
オブジェクトであるので、「日にち」オブジェクトの全
ての変数及びメソッドを継承しているため、図6に示す
メッセージ52を生成し、「今日の日にち」オブジェク
トに送信することができる。FIGS. 5 and 6 are diagrams showing the operation of the conversion unit 81 when the user A inputs Japanese of the pattern A. FIG. First, the conversion unit 81 determines that the user A uses the pattern 1 of the conversion table 82 by searching the conversion table 82. As shown in FIG.
The description in A-1 is decomposed into a main part and a predicate by the conversion unit, an object name is determined from the main part, a method name is determined from the predicate, and a message 51 is finally generated. Also, as shown in FIG. 6, the description of A-2 of pattern A is decomposed into a main part and a predicate by the conversion unit 81, an object name is determined from the main part, and a method name is determined from the predicate. Finally, the message 52 is created. In FIG. 6, “the” refers to the instance “date” generated immediately before, and “the” is used as a special term indicating the instance. Although not shown, even when the user B inputs the pattern B, the messages 51 and 52 are finally generated by the operation of the conversion unit 81 as shown in FIGS. Here, assuming that the object generated by the message 51 shown in FIG. 5 is “today's date”, the message 52 is transmitted to the “today's date” object. Since the "today's date" object is a lower-level object of "today's", it inherits all the variables and methods of the "today's" object, and therefore generates the message 52 shown in FIG. Date "object can be sent.
【0031】更に、異なる例を用いてこの発明の実施の
形態を説明する。例えば、「今月の15日が何曜日であ
るか」を問い合わせる場合、 C−1. 月は今月は何月ですか? C−2. その月の15日は何曜日ですか? (以下、これをパターンCという)という記述により問
い合わせる場合について説明する。図7は、ユーザCが
パターンCの日本語を入力した場合の変換部81の変換
動作を示す図である。ユーザCの変換テーブルは、図4
に示すパターン3を用いるものとする。変換部81は、
C−1の記述に対して図6に示した動作と同様の動作を
行うことにより、メッセージ53を生成する。また、変
換部81は、C−2に示す記述を解析し、メッセージ5
4を作成する。その際、「今月」というインスタンス
は、メッセージ53から返されるものであるため、メッ
セージ54の中にメッセージ53を含めてメッセージ5
4を生成する。メッセージ54は、「今月の15日」と
いうオブジェクトを生成した後、「今月の15日」が何
曜日であるかを問うメッセージである。Further, embodiments of the present invention will be described using different examples. For example, when inquiring “what day is the 15th of this month?” C-1. What month is this month? C-2. What day is the 15th of the month? A description will be given of a case where an inquiry is made using a description (hereinafter, referred to as a pattern C). FIG. 7 is a diagram illustrating a conversion operation of the conversion unit 81 when the user C inputs Japanese of the pattern C. The conversion table of the user C is shown in FIG.
It is assumed that pattern 3 shown in FIG. The conversion unit 81
The message 53 is generated by performing the same operation as the operation shown in FIG. 6 on the description of C-1. Further, the conversion unit 81 analyzes the description shown in C-2 and outputs the message 5
Create 4. At this time, since the instance “this month” is returned from the message 53, the message 53 is included in the message 54 and the message 5
4 is generated. The message 54 is a message for asking which day is “15th of this month” after generating an object “15th of this month”.
【0032】この実施の形態の特徴は、テーブル登録部
69を有することにより各ユーザ毎に特定のパターンの
変換テーブルを前もって作成しておく点である。図4に
示したパターン1,2,3のように、各ユーザ毎に変換
テーブルを持ち選択的に使用することにより、各ユーザ
毎に固有の自然言語を用いて処理要求文を作成し、オブ
ジェクトに対して処理を実行させることが可能になる。A feature of this embodiment is that a conversion table of a specific pattern is prepared for each user in advance by having the table registration unit 69. As in the patterns 1, 2, and 3 shown in FIG. 4, a conversion request table is provided for each user and selectively used, thereby creating a processing request sentence using a natural language unique to each user, Can be executed.
【0033】前述した図2においては、ユーザが日本語
文60を入力して翻訳部が翻訳する場合を説明したが、
図8に示すように、オブジェクト10が日本語文60を
出力するようにしても構わない。オブジェクト10が日
本語文60を出力するということは、例えば、オブジェ
クト10に備えられているメソッド11が、日本語文6
0で記述されているということを意味している。即ち、
メソッドが日本語文60により記述されていることにな
る。メソッドが日本語文で記述できるということは、オ
ブジェクト指向のプログラミングを日本語により行うこ
とができるということである。前述したように、オブジ
ェクト指向技術を用いたプログラムは、オブジェクトに
対しメッセージを与えるというコマンドの繰り返しで構
成される。このプログラムが日本語を用いて記述できる
ことにより、従来から行われていたオブジェクト指向に
基づく特別なプログラミング言語を必要とせず、自然言
語によるプログラミングを行えることになる。従って、
システムエンジニアは、実際のモデルを自然言語によっ
て記述し、その機能をブレークダウンし、ブレークダウ
ンした機能を日本語により記述していくことにより、シ
ステム分析を行うと、その日本語記述がそのまま当シス
テムにおけるプログラムになるため、同時にシステムの
開発まで行うことができることになる。このように、こ
の発明は、従来の実際のモデルとそのモデルを実現する
ためのプログラムとの間に存在するギャップを、自然言
語を用いることによりなくすことができる。このよう
に、自然言語によりプログラミングが行われ、自然言語
によりメッセージが送信されることにより、ユーザは、
システムを容易に構築することができるとともに、その
内容を容易に把握することができる。また、システムの
メンテナンスも容易に行える。In FIG. 2 described above, the case where the user inputs the Japanese sentence 60 and the translation unit translates the sentence 60 has been described.
As shown in FIG. 8, the object 10 may output a Japanese sentence 60. The fact that the object 10 outputs the Japanese sentence 60 means that, for example, the method 11 provided in the object 10
It means that it is described with 0. That is,
The method is described by the Japanese sentence 60. The fact that a method can be described in Japanese sentences means that object-oriented programming can be performed in Japanese. As described above, a program using the object-oriented technology is configured by repeating a command for giving a message to an object. Since this program can be described in Japanese, programming in a natural language can be performed without requiring a special programming language based on object orientation, which has been conventionally performed. Therefore,
The system engineer describes the actual model in natural language, breaks down its functions, and describes the broken down functions in Japanese. Therefore, the system can be developed at the same time. As described above, the present invention can eliminate the gap existing between the conventional actual model and the program for realizing the model by using the natural language. In this way, by programming in natural language and sending messages in natural language, the user can
The system can be easily constructed and its contents can be easily grasped. In addition, maintenance of the system can be easily performed.
【0034】なお、従来例に示したアダプタもオブジェ
クトの間でメッセージが理解できない場合に、オブジェ
クトの間に入ってメッセージを変換するという機能を持
っているものであるが、(1)アダプタは、メッセージ
を1対1に変換するものであること、及び、(2)アダ
プタは、ある特定のオブジェクトの間においてのみに生
成され使用されるものであること、という2点におい
て、この実施の形態の翻訳部と異なっている。 (1)翻訳部80は、色々な表現ができる自然言語に基
づくメッセージを所定の形式のメッセージに変換するも
のである。及び、(2)翻訳部は、オブジェクトとオブ
ジェクトの間に常に存在しており、特定のオブジェクト
の間に存在するものではない。この実施の形態による翻
訳部は、オブジェクトからメッセージが送信された場合
には、必ずそのメッセージを取り込み、変換後のメッセ
ージを出力するものである。Incidentally, the adapter shown in the conventional example also has a function of converting a message between objects when a message cannot be understood between the objects. This embodiment has two points in that the message is converted one-to-one, and (2) the adapter is generated and used only between certain objects. Different from the translator. (1) The translation unit 80 converts a message based on a natural language capable of various expressions into a message of a predetermined format. And (2) the translation unit always exists between objects, and does not exist between specific objects. When a message is transmitted from an object, the translation unit according to this embodiment always takes in the message and outputs the converted message.
【0035】実施の形態2.図9は、この発明のオブジ
ェクト指向に基づく自然言語プログラミングシステムの
他の構成を示す図である。従来と異なる点は、インタフ
ェース部70及び翻訳部80を備えたことにより、ユー
ザがメッセージの代わりに、日本語文を入力することが
できる点である。なお、この実施の形態では、日本語を
例にして説明するが、韓国語、中国語、モンゴル語等そ
の他の自然言語であっても構わない。Embodiment 2 FIG. 9 is a diagram showing another configuration of the object-oriented natural language programming system of the present invention. The difference from the related art is that the provision of the interface unit 70 and the translation unit 80 allows the user to input a Japanese sentence instead of a message. In this embodiment, Japanese is described as an example, but other natural languages such as Korean, Chinese, and Mongolian may be used.
【0036】図10は、インタフェース部70及び翻訳
部80の構成を示す図である。入力部71は、日本語文
60を入力し、翻訳部80に転送する。転送された日本
語文60は、変換部81において、メッセージ50に変
換される。変換部81は、日本語文60をメッセージ5
0に変換する際、変換テーブル82を参照する。変換部
81が変換動作を行っている際、エラーが発生した場
合、対話部72がユーザと対話する。その対話の結果、
必要に応じてテーブル語句追加部83が変換テーブル8
2に対して新たな語句を追加する。FIG. 10 is a diagram showing the configuration of the interface unit 70 and the translation unit 80. The input unit 71 inputs the Japanese sentence 60 and transfers it to the translation unit 80. The transferred Japanese sentence 60 is converted into a message 50 by the conversion unit 81. The conversion unit 81 converts the Japanese sentence 60 into the message 5
When converting to 0, the conversion table 82 is referred to. If an error occurs during the conversion operation of the conversion unit 81, the interaction unit 72 interacts with the user. As a result of that dialogue,
The table phrase adding unit 83 converts the conversion table 8 if necessary.
Add a new phrase for 2.
【0037】図11は、日本語文60の具体例を示す図
である。AとBを加算する場合の5つの日本語の表現を
示している。その他にも色々な表現が考えられるが、こ
こでは説明を簡単にするために、図11に示す5つの場
合を例にして説明する。FIG. 11 is a diagram showing a specific example of the Japanese sentence 60. 5 shows five Japanese expressions when A and B are added. Various other expressions are conceivable, but here, for simplicity of description, five cases shown in FIG. 11 will be described as an example.
【0038】図12は、図11に示した日本語文60か
ら生成されるべきメッセージ51とそのメッセージ51
を受信するオブジェクトA30を示す図である。ここで
は、5つの日本語文60は、全てオブジェクトA30に
対してメソッドadd:Bを指定するメッセージに変換
されなければならないものとする。FIG. 12 shows a message 51 to be generated from the Japanese sentence 60 shown in FIG.
It is a figure showing object A30 which receives. Here, it is assumed that all five Japanese sentences 60 must be converted into messages specifying the method add: B for the object A30.
【0039】図13は、述部語句に対する変換テーブル
82の具体例を示す図である。左側にある述部語句が右
側にあるメソッド名に変換されることを示している。な
お、主部語句は、図示していない主部語句に対する変換
テーブルにより、オブジェクトに変換される。図14
は、インタフェース部70の動作を示す図である。図1
5は、翻訳部80の動作を示す図である。インタフェー
ス部70は、S11において、日本語文60を入力す
る。S12において、日本語文60を翻訳部80に転送
する。翻訳部80は、S21において、変換部81によ
り日本語文60を主部語句並び述部語句に分解する。S
22において、主部語句及び述部語句を用いて述部語句
に対する変換テーブル82及び主部語句に対する変換テ
ーブル(図示せず)を検索する。述部語句に対する変換
テーブル82の検索により、述部語句をメッソド名に変
換する。主部語句に対する変換テーブル(図示せず)の
検索により、主部語句をオブジェクト名に変換する。全
ての語句が検索できて変換できた場合には、S24にお
いて、メッセージ50を作成し、S25において、メッ
セージ50を送信する。そして、S26において、イン
タフェース部70に対してノーマルリターンを返す。一
方、変換テーブル82の検索に失敗した語句がある場合
には、S27において、エラーリターンをインタフェー
ス部70に返す。インタフェース部70は、S13にお
いて、翻訳部80から返されたリターンがノーマルリタ
ーンであった場合には、そのまま処理を終える。もし、
エラーリターンが返された場合には、S14において、
エラー表示を行う。次に、S15において、対話部72
がユーザとの対話を行い、エラーを訂正する。次に、S
16において、必要に応じて変換テーブル82に対して
新たな語句を追加するようテーブル語句追加部83に依
頼する。テーブル語句追加部83は、その依頼に基づき
変換テーブル82に対して新たな語句を追加する。FIG. 13 is a diagram showing a specific example of the conversion table 82 for predicate phrases. This indicates that the predicate on the left is converted to the method name on the right. Note that the main words are converted into objects by a conversion table for the main words (not shown). FIG.
5 is a diagram showing the operation of the interface unit 70. FIG.
5 is a diagram showing the operation of the translation unit 80. The interface unit 70 inputs the Japanese sentence 60 in S11. In S12, the Japanese sentence 60 is transferred to the translation unit 80. In S21, the translation unit 80 decomposes the Japanese sentence 60 into a main part phrase and a predicate phrase in S21. S
In step 22, the conversion table 82 for the predicate and the conversion table (not shown) for the main part are searched using the main part and the predicate. The predicate phrase is converted into a method name by searching the conversion table 82 for the predicate phrase. The main words are converted into object names by searching a conversion table (not shown) for the main words. If all the phrases can be searched and converted, a message 50 is created in S24, and the message 50 is transmitted in S25. Then, in S26, a normal return is returned to the interface unit 70. On the other hand, when there is a word whose search in the conversion table 82 has failed, an error return is returned to the interface unit 70 in S27. If the return returned from the translation unit 80 is a normal return in S13, the interface unit 70 ends the processing as it is. if,
If an error return is returned, at S14,
Perform error display. Next, in S15, the dialogue unit 72
Interacts with the user to correct the error. Next, S
At 16, a request is made to the table phrase adding unit 83 to add a new phrase to the conversion table 82 as necessary. The table phrase adding unit 83 adds a new phrase to the conversion table 82 based on the request.
【0040】図16は、図14及び図15に示した動作
の具体例を示す図である。ユーザが日本語文61を入力
したものとする。この日本語文61の中で「加算する」
という語句は、図13に示す変換テーブル82には登録
されていないため、対話部72がエラー表示73を出力
する。それに対し、ユーザが別な日本語文62を入力す
る。そこで対話部72は、質問74を出力する。ユーザ
は、回答63を入力する。その結果、対話部72は、
「_を加算する」と「たす」は同じ意味であるとして、
テーブル語句追加部83を起動する。テーブル語句追加
部83は、図13に示す変換テーブル82に対して「_
を加算する」という新たな語句を追加する。その際、変
換テーブル82の「_を加算する」という新たな語句に
対するメッセージの部分は「_をたす」という語句に対
するメッセージをコピーする。結果として、変換テーブ
ル82には、述部語句=「_を加算する」、「メソッ
ド」=「add:_」が新たに登録される。図16に示
す対話は、一例であり、その他にも色々な対話形式が考
えられる。FIG. 16 is a diagram showing a specific example of the operation shown in FIGS. It is assumed that the user has input the Japanese sentence 61. "Add" in this Japanese sentence 61
Is not registered in the conversion table 82 shown in FIG. 13, the interactive unit 72 outputs an error display 73. In response, the user inputs another Japanese sentence 62. Then, the interactive unit 72 outputs the question 74. The user inputs the answer 63. As a result, the dialogue unit 72
Assuming that “add _” and “add” have the same meaning,
The table phrase adding unit 83 is activated. The table phrase adding unit 83 adds “__” to the conversion table 82 shown in FIG.
Is added. " At that time, the message portion for the new phrase “add _” in the conversion table 82 copies the message for the phrase “add _”. As a result, in the conversion table 82, the predicate phrase = "add _" and "method" = "add: _" are newly registered. The dialog shown in FIG. 16 is an example, and various other forms of dialog can be considered.
【0041】図17は、この発明のオブジェクト指向に
基づく自然言語プログラミングシステムの構成例を示す
図である。サーバ95に対して翻訳部80を設け、クラ
イアント96に対してインタフェース部70を設けてい
る。サーバ95とクライアント96は、ローカルエリア
ネットワーク、或いは、ワイドエリアネットワーク等で
接続されている。このような構成をとることにより、ユ
ーザAが「たす」を用い、ユーザBが「加算する」、
「加える」を用い、ユーザCが「プラスする」という語
句を用いていた場合、変換テーブル82には、これらの
ユーザの言葉が全て登録されることになる。このよう
に、多くのユーザが色々な言葉を使用することにより、
変換テーブル82には、新たな語句が順次登録され、変
換テーブル82の語彙が自動的に増加していくことにな
る。従って、自然言語による表現が多種多岐にわたる場
合でも、このシステムが利用されればされるほど、翻訳
率が向上することになる。このように、対話部72及び
テーブル語句追加部83を有していることにより、変換
テーブル82が自己増殖して行くところがこの発明の大
きな特徴である。FIG. 17 is a diagram showing a configuration example of a natural language programming system based on object orientation according to the present invention. The translation unit 80 is provided for the server 95, and the interface unit 70 is provided for the client 96. The server 95 and the client 96 are connected via a local area network, a wide area network, or the like. With such a configuration, the user A uses “add” and the user B “adds”
If “add” is used and the user C uses the phrase “plus”, all the words of these users are registered in the conversion table 82. In this way, many users use various words,
New words are sequentially registered in the conversion table 82, and the vocabulary of the conversion table 82 automatically increases. Therefore, even if the expression in natural language is wide and diverse, the more this system is used, the higher the translation rate will be. The major feature of the present invention is that the conversion table 82 self-proliferates by having the dialogue section 72 and the table phrase addition section 83.
【0042】実施の形態3.図18は、この発明のオブ
ジェクト指向に基づく自然言語プログラミングシステム
の入力を音声にした場合を示している。音声入力を行う
ためインタフェース部70は、音声認識部75及び単語
テーブル76を有している。単語テーブル76は、変換
テーブル82から抽出生成されるテーブルである。Embodiment 3 FIG. 18 shows a case in which the input of the object-oriented natural language programming system of the present invention is voice. The interface unit 70 for performing voice input has a voice recognition unit 75 and a word table 76. The word table 76 is a table extracted and generated from the conversion table 82.
【0043】図19は、単語テーブル76の一例を示す
図である。図19に示す単語テーブル76は、図13に
示す変換テーブル82から抽出生成されたテーブルであ
る。音声認識部75は、単語テーブル76に登録された
単語を用いて音声認識を行う。従って、入力された日本
語文の語句は、単語テーブル76に登録された単語のい
ずれかにマッチする。このように、音声認識部75が単
語テーブル76の単語用いて音声認識を行うことによ
り、音声認識部75により認識された認識結果は、翻訳
部80において、必ずメッセージに変換できることにな
る。前述したように、変換テーブル82がユーザからの
色々な語句を自己増殖的に追加登録するテーブルである
ならば、単語テーブル76を定期的に変換テーブル82
から生成することにより、単語テーブル76自身も自己
増殖的に語彙を増やすことができる。このようにして、
音声認識率を高めていくことになり、このシステムの有
効性を更に向上させることができる。FIG. 19 is a diagram showing an example of the word table 76. The word table 76 shown in FIG. 19 is a table extracted and generated from the conversion table 82 shown in FIG. The speech recognition unit 75 performs speech recognition using the words registered in the word table 76. Therefore, the input phrase of the Japanese sentence matches any of the words registered in the word table 76. As described above, the speech recognition unit 75 performs speech recognition using the words in the word table 76, so that the recognition result recognized by the speech recognition unit 75 can always be converted into a message in the translation unit 80. As described above, if the conversion table 82 is a table in which various words from the user are additionally registered in a self-proliferative manner, the word table 76 is periodically updated.
, The word table 76 itself can also self-proliferate and increase the vocabulary. In this way,
The voice recognition rate is increased, and the effectiveness of this system can be further improved.
【0044】図20は、音声認識を行う場合の他の例を
示す図である。図9に示したアプリケーションモデル9
1は、各アプリケーション毎、或いは、各業務毎に作成
することが可能である。図20に示す場合は、アプリケ
ーションモデル91の2つの例として計算モデルと小切
手モデルがある場合を示している。アプリケーションモ
デルが複数存在する場合、単語テーブルと変換テーブル
は、各モデル毎に存在させることが望ましい。この例で
は、単語テーブルとして、計算モデル用単語テーブル7
7、小切手モデル用単語テーブル78を備えている。ま
た、変換テーブルとして、計算モデル変換テーブル8
8、小切手モデル変換テーブル89を備えている。図2
1は、計算モデル用単語テーブル77の一例を示す図で
ある。図22は、小切手モデル用単語テーブル78の一
例を示す図である。このように、アプリケーションモデ
ルが異なる場合には、用いる単語も異なるため、図2
1,図22に示すように、各アプリケーションモデル毎
に登録するパターンを区別しておくのが望ましい。前述
したように、計算モデル用単語テーブル77、小切手モ
デル用単語テーブル78は、計算モデル変換テーブル8
8、小切手モデル変換テーブル89から抽出生成される
ものである。従って、特に計算モデル用単語テーブル7
7、小切手モデル用単語テーブル78を作成するのに労
力を用いる必要はない。また、計算モデル変換テーブル
88、小切手モデル変換テーブル89は、対話部72及
びテーブル語句追加部83の動作により自己増殖するこ
とができるため、ユーザが計算モデル変換テーブル8
8、小切手モデル変換テーブル89を意識的にメンテナ
ンスする必要がない。FIG. 20 is a diagram showing another example in the case of performing voice recognition. Application model 9 shown in FIG.
1 can be created for each application or for each task. FIG. 20 shows a case where there are a calculation model and a check model as two examples of the application model 91. When there are a plurality of application models, it is desirable that a word table and a conversion table exist for each model. In this example, the calculation model word table 7 is used as the word table.
7. A check model word table 78 is provided. The calculation model conversion table 8 is used as the conversion table.
8. A check model conversion table 89 is provided. FIG.
FIG. 1 is a diagram illustrating an example of a calculation model word table 77. FIG. 22 is a diagram showing an example of the check model word table 78. As shown in FIG. As described above, when the application model is different, the words used are different.
1, it is desirable to distinguish patterns to be registered for each application model, as shown in FIG. As described above, the calculation model word table 77 and the check model word table 78 correspond to the calculation model conversion table 8.
8. It is extracted and generated from the check model conversion table 89. Therefore, especially the word table 7 for the calculation model
7. It is not necessary to use labor to create the check model word table 78. Further, since the calculation model conversion table 88 and the check model conversion table 89 can self-proliferate by the operation of the dialogue unit 72 and the table phrase adding unit 83, the user can calculate the calculation model conversion table 8
8. There is no need to consciously maintain the check model conversion table 89.
【0045】図23は、単語テーブル76の他の例を示
す図である。例えば、図23(a),(b)に示すよう
に、日本語用、或いは、英語用の言語毎の単語テーブル
を用意しても構わない。或いは、(c)〜(f)に示す
ように、素人用、業界用、初心者用、プロ用等の単語テ
ーブルを用意して選択的に使い分けても構わない。な
お、図23に示す単語テーブルのいずれも変換テーブル
から抽出生成されるものであるため、変換テーブルにお
いて、(a)〜(f)に示すような区分けができるよう
なフラグを持っているか、或いは、変換テーブル自身が
(a)〜(f)のように区別されて作成されている。FIG. 23 is a diagram showing another example of the word table 76. For example, as shown in FIGS. 23A and 23B, a word table for each language for Japanese or English may be prepared. Alternatively, as shown in (c) to (f), word tables for amateurs, industry, beginners, professionals, etc. may be prepared and selectively used. Since each of the word tables shown in FIG. 23 is extracted and generated from the conversion table, whether or not the conversion table has a flag that can be classified as shown in (a) to (f), or , And the conversion table itself is created as distinguished as in (a) to (f).
【0046】[0046]
【発明の効果】以上のように、この発明によれば、自然
言語を用いてプログラミングしたりメッセージを作成で
きるので、現実のモデルを分析し自然言語で記述するこ
とにより、オブジェクト指向処理システムにおけるプロ
グラムを作成することができる。即ち、オブジェクト指
向処理システムにおけるモデル分析作業とオブジェクト
指向処理システムにおけるプログラミング作業のギャッ
プを無くすことができる。更に、特別なオブジェクト指
向プログラミング言語を熟知したプログラマでなくとも
オブジェクト指向処理システムにおけるプログラムを作
成することができる。また、そのような言語の仕様を理
解するものでなくともプログラムに記載された内容を理
解することができる。従って、企業の経営者や管理者や
実際にシステムを管理運用している者でさえもプログラ
ムに記載された内容を理解することができる。As described above, according to the present invention, since programming and messages can be created using natural language, a program in an object-oriented processing system can be analyzed by analyzing a real model and describing it in natural language. Can be created. That is, it is possible to eliminate the gap between the model analysis work in the object-oriented processing system and the programming work in the object-oriented processing system. Furthermore, a program in an object-oriented processing system can be created without a programmer who is familiar with a special object-oriented programming language. In addition, it is possible to understand the contents described in the program without understanding the language specification. Therefore, even a company manager, a manager, or a person who actually manages and operates the system can understand the contents described in the program.
【0047】また、この発明によれば、任意の語句を用
いて処理要求文を入力することができる。従って、ユー
ザは、オブジェクト指向処理システムにおいても、クラ
スライブラリやメッセージの内容や形式を知らなくて
も、オブジェクト指向処理システムを利用することがで
きる。Further, according to the present invention, it is possible to input a processing request sentence using an arbitrary word. Therefore, even in the object-oriented processing system, the user can use the object-oriented processing system without knowing the contents and format of the class library and the message.
【0048】また、この発明によれば、自然言語、特に
日本語を用いてシステムを動作させることができる。Further, according to the present invention, the system can be operated using a natural language, in particular, Japanese.
【0049】また、この発明によれば、音声認識を行
い、オブジェクト指向処理システムを動作させることが
できる。Further, according to the present invention, speech recognition can be performed and the object-oriented processing system can be operated.
【図1】 この発明のオブジェクト指向に基づく自然言
語プログラミングシステムの構成図である。FIG. 1 is a configuration diagram of a natural language programming system based on object orientation according to the present invention.
【図2】 この発明の翻訳部80の構成図である。FIG. 2 is a configuration diagram of a translation unit 80 of the present invention.
【図3】 この発明のメッセージとオブジェクトの具体
例を示す図である。FIG. 3 is a diagram showing a specific example of a message and an object according to the present invention.
【図4】 この発明の変換テーブルを示す図である。FIG. 4 is a diagram showing a conversion table according to the present invention.
【図5】 この発明の翻訳部80の動作説明図である。FIG. 5 is an explanatory diagram of the operation of the translation unit 80 of the present invention.
【図6】 この発明の翻訳部80の動作説明図である。FIG. 6 is an explanatory diagram of the operation of the translation unit 80 of the present invention.
【図7】 この発明の翻訳部80の動作説明図である。FIG. 7 is an explanatory diagram of the operation of the translation unit 80 of the present invention.
【図8】 この発明のオブジェクトと翻訳部の関係を示
す図である。FIG. 8 is a diagram showing a relationship between an object and a translation unit according to the present invention.
【図9】 この発明のオブジェクト指向に基づく自然言
語プログラミングシステムの他の構成図である。FIG. 9 is another configuration diagram of the object-oriented natural language programming system of the present invention.
【図10】 この発明のインタフェース部70と翻訳部
80の構成図である。FIG. 10 is a configuration diagram of an interface unit 70 and a translation unit 80 of the present invention.
【図11】 この発明の日本語文60の具体例を示す図
である。FIG. 11 is a diagram showing a specific example of a Japanese sentence 60 according to the present invention.
【図12】 この発明のメッセージとオブジェクトの具
体例を示す図である。FIG. 12 is a diagram showing a specific example of a message and an object according to the present invention.
【図13】 この発明の変換テーブル82の具体例を示
す図である。FIG. 13 is a diagram showing a specific example of a conversion table 82 according to the present invention.
【図14】 この発明のインタフェース部70の動作フ
ローチャート図である。FIG. 14 is an operation flowchart of the interface unit 70 of the present invention.
【図15】 この発明の翻訳部80の動作フローチャー
ト図である。FIG. 15 is an operation flowchart of the translation unit 80 of the present invention.
【図16】 この発明の対話部72の動作例を示す図で
ある。FIG. 16 is a diagram showing an operation example of the dialogue unit 72 of the present invention.
【図17】 この発明のシステム構成図である。FIG. 17 is a system configuration diagram of the present invention.
【図18】 この発明の音声認識を示す図である。FIG. 18 is a diagram showing speech recognition according to the present invention.
【図19】 この発明の単語テーブル76を示す図であ
る。FIG. 19 is a diagram showing a word table 76 according to the present invention.
【図20】 この発明の音声認識の他の例を示す図であ
る。FIG. 20 is a diagram showing another example of the speech recognition of the present invention.
【図21】 この発明の計算モデル用単語テーブル77
を示す図である。FIG. 21 is a calculation model word table 77 according to the present invention.
FIG.
【図22】 この発明の小切手モデル用単語テーブル7
8を示す図である。FIG. 22 is a check model word table 7 of the present invention.
FIG.
【図23】 この発明のその他の単語テーブルを示す図
である。FIG. 23 is a diagram showing another word table of the present invention.
【図24】 従来のオブジェクト指向処理システムを示
す図である。FIG. 24 is a diagram showing a conventional object-oriented processing system.
【図25】 従来のオブジェクトとメッセージを示す図
である。FIG. 25 is a diagram showing a conventional object and message.
【図26】 従来のアダプタを示す図である。FIG. 26 is a view showing a conventional adapter.
【図27】 従来のアダプタを示す図である。FIG. 27 is a view showing a conventional adapter.
15 ViewObject、16 Adaptor、
17 ModelObject、30 オブジェクト
A、50,51,52,53,54 メッセージ、60
日本語文、69 テーブル登録部、70 インタフェ
ース部、71 入力部、72 対話部、75 音声認識
部、76 単語テーブル、77 計算モデル用単語テー
ブル、78 小切手モデル用単語テーブル、80 翻訳
部、81変換部、82 変換テーブル、83 テーブル
語句追加部、84 オブジェクト翻訳部、85 オブジ
ェクト変換テーブル、86 メソッド翻訳部、87 メ
ソッド変換テーブル、88 計算モデル変換テーブル、
89 小切手モデル変換テーブル、90 動作環境、9
1 アプリケーションモデル、92 クラスライブラ
リ、93 オペレーティングシステム(OS)、94
ハードウェア、95サーバ、96 クライアント。15 ViewObject, 16 Adapter,
17 ModelObject, 30 Object A, 50, 51, 52, 53, 54 Message, 60
Japanese sentence, 69 table registration unit, 70 interface unit, 71 input unit, 72 dialogue unit, 75 speech recognition unit, 76 word table, 77 calculation model word table, 78 check model word table, 80 translation unit, 81 conversion unit , 82 conversion table, 83 table phrase addition unit, 84 object translation unit, 85 object conversion table, 86 method translation unit, 87 method conversion table, 88 calculation model conversion table,
89 Check model conversion table, 90 Operating environment, 9
1 application model, 92 class library, 93 operating system (OS), 94
Hardware, 95 servers, 96 clients.
───────────────────────────────────────────────────── フロントページの続き (72)発明者 鈴木 克志 東京都千代田区丸の内二丁目2番3号 三 菱電機株式会社内 (72)発明者 大貫 一志 東京都千代田区丸の内二丁目2番3号 三 菱電機株式会社内 (72)発明者 大鶴 祥介 東京都千代田区丸の内二丁目2番3号 三 菱電機株式会社内 ──────────────────────────────────────────────────続 き Continuing on the front page (72) Inventor Katsushi Suzuki 2-3-2 Marunouchi, Chiyoda-ku, Tokyo Within Mitsui Electric Co., Ltd. (72) Inventor Kazushi Onuki 2-3-2 Marunouchi, Chiyoda-ku, Tokyo (72) Inventor Shosuke Ohtsuru 2-3-2 Marunouchi, Chiyoda-ku, Tokyo Mitsui Electric Co., Ltd.
Claims (8)
ジェクト間でメッセージを送受信して処理を行うオブジ
ェクト指向処理システムにおいて、 任意の語句を用いた処理要求文を入力して、入力した処
理要求文を所定の形式のメッセージに翻訳する翻訳部を
備え、 上記翻訳部は、 オブジェクトの名前とメソッドの名前に対応して処理要
求文に用いられる語句を登録する変換テーブルと、 上記変換テーブルを検索して、処理要求文を少なくとも
オブジェクトの名前とメソッドの名前とから構成される
メッセージに変換する変換部とを備えたことを特徴とす
るオブジェクト指向に基づく自然言語プログラミングシ
ステム。1. An object-oriented processing system for performing processing by transmitting and receiving messages between objects encapsulating methods and data, wherein a processing request sentence using an arbitrary word is input and the input processing request sentence is determined. A translation unit that translates the message into a message in the form of: a translation table that registers words and phrases used in a processing request sentence in correspondence with an object name and a method name; A natural language programming system based on object orientation, comprising: a conversion unit for converting a processing request sentence into a message composed of at least an object name and a method name.
換テーブルを登録するテーブル登録部を備えるととも
に、上記変換部は、複数のパターンの中から1つのパタ
ーンを選択して使用することを特徴とする請求項1記載
のオブジェクト指向に基づく自然言語プログラミングシ
ステム。2. The method according to claim 1, wherein the translation unit further includes a table registration unit for registering conversion tables of a plurality of patterns, and the conversion unit selects and uses one pattern from a plurality of patterns. The natural language programming system based on object orientation according to claim 1.
言語プログラミングシステムは、更に、任意の語句を用
いた処理要求文を入力するインタフェース部を備え、上
記インタフェース部は、上記翻訳部が処理要求文をメッ
セージに翻訳することができない場合に、処理要求文の
入力者と対話することが可能な対話部を備え、 上記翻訳部は、対話部の対話結果に基づいて上記変換テ
ーブルに対して変換可能な語句を追加するテーブル語句
追加部を備えたことを特徴とする請求項1記載のオブジ
ェクト指向に基づく自然言語プログラミングシステム。3. The natural language programming system based on the object-oriented processing further includes an interface unit for inputting a processing request sentence using an arbitrary phrase, wherein the interface unit transmits the processing request sentence by a message. A dialogue unit capable of interacting with a person who inputs the processing request sentence when the translation table cannot be translated, wherein the translation unit converts words and phrases that can be converted to the conversion table based on the dialogue result of the dialogue unit 2. A natural language programming system based on object orientation according to claim 1, further comprising a table phrase adding unit for adding a word.
テーブルと、 処理要求文を音声で入力するとともに、上記単語テーブ
ルを用いて処理要求文を音声認識する音声認識部とを備
えたことを特徴とする請求項3記載のオブジェクト指向
に基づく自然言語プログラミングシステム。4. The voice input unit inputs a word table generated from words registered in the conversion table and a processing request sentence, and uses the word table to perform voice recognition of the processing request sentence. The object-oriented natural language programming system according to claim 3, further comprising a recognition unit.
を保持し、上記インタフェース部は、モデル毎に単語テ
ーブルを保持することを特徴とする請求項4記載のオブ
ジェクト指向に基づく自然言語プログラミングシステ
ム。5. The object-oriented natural language programming system according to claim 4, wherein said translation unit holds a conversion table for each model, and said interface unit holds a word table for each model. .
に対して複数の単語テーブルを保持し、1つの単語テー
ブルを選択して使用することを特徴とする請求項4記載
のオブジェクト指向に基づく自然言語プログラミングシ
ステム。6. The object-oriented natural language according to claim 4, wherein said interface unit holds a plurality of word tables for one model, and selects and uses one word table. Programming system.
あることを特徴とする請求項1〜6いずれかに記載のオ
ブジェクト指向に基づく自然言語プログラミングシステ
ム。7. The natural language programming system according to claim 1, wherein the processing request sentence is a sentence in a natural language.
ることを特徴とする請求項7記載のオブジェクト指向に
基づく自然言語プログラミングシステム。8. The object-oriented natural language programming system according to claim 7, wherein the sentence in the natural language is a Japanese sentence.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8186193A JPH1031582A (en) | 1996-07-16 | 1996-07-16 | Natural language programming system based on object orientation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8186193A JPH1031582A (en) | 1996-07-16 | 1996-07-16 | Natural language programming system based on object orientation |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH1031582A true JPH1031582A (en) | 1998-02-03 |
Family
ID=16184018
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP8186193A Pending JPH1031582A (en) | 1996-07-16 | 1996-07-16 | Natural language programming system based on object orientation |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH1031582A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000122855A (en) * | 1998-10-13 | 2000-04-28 | Ntt Data Corp | Method and device for giving data name and recording medium |
JP2022534506A (en) * | 2019-05-28 | 2022-08-01 | レヒカ・エセ・ア・エセ | Processes and systems for automatic generation of functional architecture documents and software design and analysis specification documents from natural language |
-
1996
- 1996-07-16 JP JP8186193A patent/JPH1031582A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000122855A (en) * | 1998-10-13 | 2000-04-28 | Ntt Data Corp | Method and device for giving data name and recording medium |
JP2022534506A (en) * | 2019-05-28 | 2022-08-01 | レヒカ・エセ・ア・エセ | Processes and systems for automatic generation of functional architecture documents and software design and analysis specification documents from natural language |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11520992B2 (en) | Hybrid learning system for natural language understanding | |
US10497366B2 (en) | Hybrid learning system for natural language understanding | |
JP3009215B2 (en) | Natural language processing method and natural language processing system | |
US20140156282A1 (en) | Method and system for controlling target applications based upon a natural language command string | |
US7197739B2 (en) | Apparatus for automatically generating source code | |
JP2514152B2 (en) | How to build an information processing system | |
US6256618B1 (en) | Computer architecture using self-manipulating trees | |
JPH10326255A (en) | Method for handling message independent of language | |
Martin et al. | Development Tools for the Open Agent Architecture. | |
CN108932225B (en) | Method and system for converting natural language requirements into semantic modeling language statements | |
US20050165712A1 (en) | Method for operating software object using natural language and program for the same | |
Schaefer | A survey on transformation tools for model based user interface development | |
JPH1031582A (en) | Natural language programming system based on object orientation | |
JP2002342078A (en) | Program development system and method | |
KR20190037988A (en) | Apparatus for analyzing compound nouns and method thereof, computer program | |
Kiyavitskaya et al. | Experimenting with Linguistic Tools for Conceptual Modelling: Quality of the models and critical features | |
Arnoldus et al. | Less is more: Unparser-completeness of metalanguages for template engines | |
JP7591212B1 (en) | Information processing device, information processing method, and program | |
Mishchenko et al. | New functionalities of the system for processing natural language specifications and its operating environment | |
Sierra et al. | Building applications with domain-specific markup languages: A systematic approach to the development of XML-based software | |
Hermes et al. | Classification of text processing components: The tesla role system | |
JP2654533B2 (en) | Database Japanese notation candidate generation method | |
JP2606541B2 (en) | Knowledge acquisition method | |
JP4056298B2 (en) | Language computer, language processing method, and program | |
JPH1131149A (en) | Intelligent interface system and document retrieval method using the same |