JP2003241974A - Executable object generating method and program - Google Patents

Executable object generating method and program

Info

Publication number
JP2003241974A
JP2003241974A JP2002040398A JP2002040398A JP2003241974A JP 2003241974 A JP2003241974 A JP 2003241974A JP 2002040398 A JP2002040398 A JP 2002040398A JP 2002040398 A JP2002040398 A JP 2002040398A JP 2003241974 A JP2003241974 A JP 2003241974A
Authority
JP
Japan
Prior art keywords
program
file
executable object
definition
data
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
JP2002040398A
Other languages
Japanese (ja)
Inventor
Norio Yanagi
紀夫 柳
Kiyoshi Hiura
潔 日浦
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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2002040398A priority Critical patent/JP2003241974A/en
Publication of JP2003241974A publication Critical patent/JP2003241974A/en
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide an XML data communication technique facilitating a mounting and enabling the general handling of XML data. <P>SOLUTION: A definition file in which the definition of a predetermined structure is described by use of a markup language is generated. The definition file is converted to a program file and header file described in a high-level language. A user program including the header file, which is described in the high-level language, is generated. The program file and the user program is compiled to generate an executable object. <P>COPYRIGHT: (C)2003,JPO

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明はXML(eXten
sible Markup Language)に関
し、特に、XMLで記述されたデータのデータ通信に関
する。
TECHNICAL FIELD The present invention relates to XML (eXten).
More particularly, the present invention relates to data communication of data described in XML.

【0002】[0002]

【従来の技術】近年、XMLを用いたデータ通信を行な
うシステムを構築することが要望されている。XMLは
データ記述言語であり、DTDの型定義により、制約を
与えたXMLデータのAPI(Application
Program Interface)は規定してい
ない。
2. Description of the Related Art In recent years, it has been desired to construct a system for performing data communication using XML. XML is a data description language, and APIs (Applications) of XML data that are constrained by the type definition of DTD.
The Program Interface) is not specified.

【0003】このため、XMLデータを通信するシステ
ムを構築する際には、通信方式やAPIについて別途検
討する必要があり、そのための開発工数を確保しなけれ
ばならないのが現状である。
Therefore, when constructing a system for communicating XML data, it is necessary to consider the communication method and API separately, and it is the current situation that the number of development man-hours must be secured for that.

【0004】[0004]

【発明が解決しようとする課題】本発明はこのような状
況に鑑みてなされたものであり、本発明が解決しようと
する課題は、実装が容易であると共に、汎用的にXML
データを取り扱うことが可能な、XMLデータの通信技
術を提供することである。
SUMMARY OF THE INVENTION The present invention has been made in view of such a situation, and the problem to be solved by the present invention is easy to implement and general-purpose XML.
It is to provide XML data communication technology capable of handling data.

【0005】[0005]

【課題を解決するための手段】このような課題を解決す
るため、本発明は以下のような方法及びコンピュータプ
ログラムを提供する。
In order to solve such a problem, the present invention provides the following method and computer program.

【0006】本発明は、利用者プログラムをコンパイル
して実行可能オブジェクトを生成する方法において、次
のような特徴を有する方法を提供する。即ち、予め定め
られた構造体の定義をマークアップ言語を用いて記述し
た定義ファイルを生成する段階1と、定義ファイルを、
高水準言語で記述したプログラムファイル及びヘッダフ
ァイルに変換する段階2と、ヘッダファイルをインクル
ードしたプログラムであって、高水準言語で記述した利
用者プログラムを生成する段階3と、プログラムファイ
ル及び利用者プログラムをコンパイルして実行可能オブ
ジェクトを生成する段階4とを含むことを特徴とする実
行可能オブジェクト生成方法である。
The present invention provides a method for compiling a user program to generate an executable object, which has the following characteristics. That is, the step 1 of generating a definition file in which the definition of a predetermined structure is described using a markup language, and the definition file are
Step 2 of converting into a program file and a header file written in a high-level language, step 3 of generating a user program written in a high-level language that is a program including the header file, and a program file and a user program And a step 4 of compiling an executable object to generate an executable object.

【0007】この実行可能オブジェクト生成方法におい
て、マークアップ言語は例えばXML(eXtensi
ble Markup Language)である。
In this executable object generation method, the markup language is, for example, XML (eXtensi).
ble Markup Language).

【0008】構造体はデータの型定義を含むことが望ま
しい。データは数値データである場合に特に有効であ
る。
The structure preferably contains a type definition for the data. The data is particularly effective when it is numerical data.

【0009】段階4は、プログラムファイル及び利用者
プログラムをコンパイルして再配置可能オブジェクトを
生成する段階と、再配置可能オブジェクトと、予め用意
したライブラリとをリンクして実行可能オブジェクトを
生成する段階とを含むこととしてもよい。
Step 4 is a step of compiling a program file and a user program to generate a relocatable object, and a step of linking the relocatable object with a library prepared in advance to generate an executable object. May be included.

【0010】段階2は、定義ファイルを、夫々異なる高
水準言語で記述したプログラムファイル及びヘッダファ
イルに変換することとしてもよい。
In step 2, the definition file may be converted into a program file and a header file written in different high level languages.

【0011】また、本発明は、予め定められた構造体の
定義をマークアップ言語で記述した定義ファイルを、高
水準言語で記述したプログラムファイル及びヘッダファ
イルに変換する処理を、コンピュータに実行させるプリ
プロセッサプログラムを提供する。
Further, the present invention is a preprocessor for causing a computer to execute a process of converting a definition file in which a definition of a predetermined structure is described in a markup language into a program file and a header file described in a high level language. Offer the program.

【0012】更に、本発明は、高水準言語で記述された
利用者プログラムをコンパイルして実行可能オブジェク
トを生成する処理をコンピュータに実行させるプログラ
ムにおいて、次の特徴を有するプログラムを提供する。
即ち、予め定められた構造体の定義をマークアップ言語
で記述した定義ファイルを、高水準言語で記述したプロ
グラムファイル及びヘッダファイルに変換する処理1
と、ヘッダファイルをインクルードした利用者プログラ
ム、及び、プログラムファイルを、コンパイルして実行
可能オブジェクトを生成する処理2とをコンピュータに
実行させることを特徴とする実行可能オブジェクト生成
プログラムである。
Further, the present invention provides a program for causing a computer to execute a process of compiling a user program written in a high-level language to generate an executable object, the program having the following characteristics.
That is, a process 1 of converting a definition file in which the definition of a predetermined structure is described in a markup language into a program file and a header file described in a high level language.
And a user program including a header file, and a process 2 of compiling a program file to generate an executable object in a computer.

【0013】この実行可能オブジェクト生成プログラム
において、マークアップ言語は例えばXML(eXte
nsible Markup Language)であ
る。
In this executable object generation program, the markup language is, for example, XML (eXte).
It is a nable markup language).

【0014】また、構造体はデータの型定義を含むこと
としてよい。データは数値データであると特に望まし
い。
The structure may also include a type definition for the data. It is particularly desirable that the data is numerical data.

【0015】処理2は、プログラムファイル及び利用者
プログラムをコンパイルして再配置可能オブジェクトを
生成する処理と、再配置可能オブジェクトと、予め用意
したライブラリとをリンクして実行可能オブジェクトを
生成する処理とを含むこととしてもよい。
Process 2 is a process of compiling a program file and a user program to generate a relocatable object, and a process of linking the relocatable object and a library prepared in advance to generate an executable object. May be included.

【0016】処理1は、定義ファイルを、夫々異なる高
水準言語で記述したプログラムファイル及びヘッダファ
イルに変換することとしてもよい。
In the process 1, the definition file may be converted into a program file and a header file described in different high level languages.

【0017】更に、本発明は、上述のプログラムを格納
した記録媒体、及び、この記録媒体を格納したコンピュ
ータを提供する。
Further, the present invention provides a recording medium storing the above program and a computer storing the recording medium.

【0018】[0018]

【発明の実施の形態】XMLでは、DTD(Docum
ent Type Definition)を利用して
データ型定義を行なうことができる。本発明では、ま
ず、DTDを用いてアプリケーションプログラムが使用
可能な構造体を生成する。以下ではアプリケーションプ
ログラムが使用可能な構造体を生成するDTDをXac
tDTDと記す。次に、この構造体を用いてXML形式
のデータを送受信する実行可能プログラムを生成する。
BEST MODE FOR CARRYING OUT THE INVENTION In XML, DTD (Docum) is used.
The data type definition can be performed using ent Type Definition). In the present invention, first, a structure that can be used by an application program is generated using DTD. In the following, Xac is used to generate a DTD that can be used by the application program.
It is referred to as tDTD. Next, using this structure, an executable program for transmitting / receiving XML format data is generated.

【0019】1.第1の実施の形態 XactDTDの生成からXML形式のデータを送受信
することが可能な実行可能プログラムを生成するまでの
過程について、図1を参照して説明する。
1. First Embodiment A process from generation of XactDTD to generation of an executable program capable of transmitting and receiving data in XML format will be described with reference to FIG.

【0020】まず、利用者は、送受信しようとする構造
体を定義し、この構造体をDTDを用いて記述して、X
actDTD1を作成する。
First, the user defines a structure to be transmitted / received, describes this structure using DTD, and
Create actDTD1.

【0021】次に、XactDTD1をXactDTD
プリプロセッサ2にかける。XactDTDプリプロセ
ッサ2はXactDTD1を変換し、XactDTDプ
ログラム3及びXactDTDヘッダファイル4を生成
する。これらXactDTDプログラム3及びXact
DTDヘッダファイル4は共に所定の高水準言語で記述
される。この高水準言語としてはコンパイラ言語であれ
ばよく、例えばC、C++、Java(登録商標)等が
考えられる。XactDTDプログラム3はXactD
TDヘッダファイル4をインクルード(includ
e)するように生成される。
Next, XactDTD1 is replaced with XactDTD.
Apply to preprocessor 2. The XactDTD preprocessor 2 converts the XactDTD1 and generates the XactDTD program 3 and the XactDTD header file 4. These Xact DTD program 3 and Xact
Both the DTD header files 4 are described in a predetermined high level language. The high-level language may be any compiler language, such as C, C ++, and Java (registered trademark). XactDTD program 3 is XactD
Include TD header file 4 (include
e) is generated.

【0022】この状態で、利用者は目的とする実行可能
オブジェクトのソースプログラムである利用者プログラ
ム5を高水準言語を用いて作成する。このとき、Xac
tDTDヘッダファイル22をインクルードして利用者
プログラム5を作成する。
In this state, the user creates the user program 5, which is the source program of the target executable object, using a high-level language. At this time, Xac
The user program 5 is created by including the tDTD header file 22.

【0023】このようにして作成した利用者プログラム
5をコンパイル6することにより利用者実行プログラム
7を生成する。利用者実行プログラム7は再配置可能オ
ブジェクトである。
The user execution program 7 is generated by compiling 6 the user program 5 thus created. The user execution program 7 is a relocatable object.

【0024】他方、XactDTDプログラム3もコン
パイル8することによりXactDTD実行プログラム
9を生成する。XactDTD実行プログラム9は再配
置可能オブジェクトである。
On the other hand, the XactDTD program 3 is also compiled 8 to generate the XactDTD execution program 9. The XactDTD execution program 9 is a relocatable object.

【0025】こうして生成した2つの再配置可能オブジ
ェクト、利用者実行プログラム7及びXactDTD実
行プログラム9は、予め用意したライブラリ、Xact
DTDライブラリ10及び通信クラスライブラリ11と
共にリンク12され、最後に実行可能オブジェクトとし
て実行可能プログラム13を生成する。
The two relocatable objects thus generated, the user execution program 7 and the XactDTD execution program 9, are the library prepared in advance, Xact.
It is linked 12 together with the DTD library 10 and the communication class library 11, and finally the executable program 13 is generated as an executable object.

【0026】XactDTDライブラリ10には、電文
の要素分割、primitive型(int型、ENU
M型等)と文字列表現の相互変換、各要素のベースクラ
ス、OF型用のテンプレート、入出力補助機能が置かれ
ている。
The Xact DTD library 10 includes element division of a telegram, a primitive type (int type, ENU).
Mutual conversion between M type) and character string representation, base class of each element, template for OF type, input / output auxiliary function are provided.

【0027】通信クラスライブラリ11には、通信関係
の関数で使用頻度の高いものをまとめたものであり、例
えば、関数hiStringや関数hiTCPSock
がある。関数hiTCPSockは、TCPソケットを表
すhiStream通信機能であり、サーバ側はhiConnectorを
使い、接続口の宣言を行い、クライアント側はサーバの
hiConnector名を指定して接続する。
The communication class library 11 is a collection of frequently used functions related to communication. For example, the function hiString or the function hiTCPSock.
There is. The function hiTCPSock is a hiStream communication function that represents a TCP socket. The server side uses hiConnector to declare the connection port, and the client side uses the server
Specify the hiConnector name to connect.

【0028】[0028]

【数1】 [Equation 1]

【0029】DTDでは、データの構造は定義可能であ
るが、整数型、浮動小数点型等のデータ型の定義をする
方法が定められていない。これに対して、XactDT
Dでは、整数型や浮動小数点型に型属性を与えることに
より、これらのデータ型の定義を可能としている。この
定義を行なう際にDTDの構文規則を拡張していない点
に注意されたい。
In DTD, the structure of data can be defined, but a method for defining data types such as integer type and floating point type is not defined. In contrast, XactDT
In D, it is possible to define these data types by giving type attributes to integer types and floating point types. Note that we did not extend the syntax rules of DTD in making this definition.

【0030】図2はXactDTD1の例である。図中
右側に縦に並ぶ数字は説明の便宜上付された行数を示す
数字である。各行の内容について以下に説明する。ルー
トの要素名としてMyTypeを宣言する(第21
行)。要素MyTypeはその子要素として要素x及び
iを含む(第22行)。要素xは子要素として要素s及
びfを含む(第23行)。要素iの値は文字列データで
ある(第24行)。要素iは属性xactを有し、デー
タ型は任意の文字列である。属性値は32ビット整数型
をデフォルト値とし、この値からの変更は不可とする
(第25、26行)。要素sの値は文字列データである
(第27行)。要素sは属性xactを有し、データ型
は任意の文字列である。属性値は浮動小数点型をデフォ
ルト値とし、この値からの変更は不可とする(第28、
29行)。
FIG. 2 shows an example of XactDTD1. The numbers arranged vertically on the right side of the figure are numbers indicating the number of lines added for convenience of description. The contents of each line will be described below. Declare MyType as the root element name (21st
line). Element MyType contains elements x and i as its child elements (line 22). Element x includes elements s and f as child elements (line 23). The value of the element i is character string data (24th line). The element i has an attribute xact and its data type is an arbitrary character string. The attribute value has a 32-bit integer type as a default value and cannot be changed from this value (lines 25 and 26). The value of the element s is character string data (27th line). The element s has an attribute xact and the data type is an arbitrary character string. Floating point type is used as the default attribute value, and it cannot be changed from this value (28th,
Line 29).

【0031】図2の例に対応する利用者プログラム5に
ついて図3を参照して説明する。この例では、利用者プ
ログラム5はC++により記述されている。図右側に縦
に並ぶ数字は行数を示すために付したものである。ま
ず、XactDTDヘッダファイル4として、Xact
_MyType.hをインクルードする(第31行)。
構造体型Xact_MyTypeを有する構造体変数d
ataを宣言する(第33行)。構造体変数dataの
要素iに100を代入する(第34行)。構造体変数d
ataの要素xに含まれる要素sに文字列abcを代入
する(第35行)。構造体変数dataの要素xに含ま
れる要素fに1.23を代入する(第36行)。構造体
dataをファイル名sample.xmlとして出力
する(第37、38行)。
The user program 5 corresponding to the example of FIG. 2 will be described with reference to FIG. In this example, the user program 5 is written in C ++. The numbers arranged vertically on the right side of the figure are added to indicate the number of lines. First, as the XactDTD header file 4, Xact
_MyType. Include h (line 31).
Structure variable d with structure type Xact_MyType
Declare ata (line 33). Substitute 100 for the element i of the structure variable data (line 34). Structure variable d
The character string abc is substituted for the element s included in the element x of ata (line 35). 1.23 is assigned to the element f included in the element x of the structure variable data (line 36). The structure data has a file name sample. Output as xml (lines 37, 38).

【0032】図3に例示した利用者プログラム5を元に
生成した実行可能プログラム13は、ファイルsamp
le.xmlとして図4のようなファイルを出力する。
The executable program 13 generated based on the user program 5 illustrated in FIG. 3 is a file samp.
le. A file as shown in FIG. 4 is output as xml.

【0033】こうして生成された実行可能プログラム1
3は、例えばオペレーティングシステム(OS)とアプ
リケーションプログラムを仲介することが考えられる。
具体例としては、API(Application P
rogram Interface)がある。あるい
は、OS上で単独で実行可能なプログラムであってもよ
い。
Executable program 1 generated in this way
It is conceivable that 3 acts as an intermediary between an operating system (OS) and an application program, for example.
As a specific example, an API (Application P
program interface). Alternatively, it may be a program that can be executed independently on the OS.

【0034】このようにして、利用者はXMLのDTD
を用いることにより、簡便な構造体APIを用いて、X
MLデータを送受信可能な実行プログラムを生成するこ
とが可能となる。
In this way, the user can use the XML DTD.
By using a simple structure API,
It becomes possible to generate an execution program capable of transmitting and receiving ML data.

【0035】2.第2の実施の形態 次に、このようにして生成した実行プログラムを利用し
た監視システムについて図5を参照して説明する。この
監視システムでは、監視対象装置50の状態を監視装置
60にて監視する。監視対象装置50の状態はXMLデ
ータとして監視装置60に送信される。
2. Second Embodiment Next, a monitoring system using the execution program thus generated will be described with reference to FIG. In this monitoring system, the state of the monitoring target device 50 is monitored by the monitoring device 60. The state of the monitoring target device 50 is transmitted to the monitoring device 60 as XML data.

【0036】監視対象装置50は、ハードウェア51、
ハードウェア51上で動作するオペレーティングシステ
ム(OS)52、OS52上で動作する監視対象装置ア
プリケーション53からなる。
The device to be monitored 50 includes hardware 51,
An operating system (OS) 52 operating on the hardware 51 and a monitoring target device application 53 operating on the OS 52.

【0037】監視対象装置アプリケーション53は、監
視対象となる状態を示す監視情報54を監視する利用者
アプリケーション55を含む。利用者アプリケーション
55は、例えばポーリングにより監視情報54を監視
し、所定の変化を検出すると、監視情報54を実行可能
プログラム13aに渡す。
The monitoring target device application 53 includes a user application 55 that monitors the monitoring information 54 indicating the status to be monitored. The user application 55 monitors the monitoring information 54 by polling, for example, and when detecting a predetermined change, passes the monitoring information 54 to the executable program 13a.

【0038】実行可能プログラム13aは、第1の実施
の形態で説明した実施可能プログラム13に相当するプ
ログラムであり、監視情報54をXMLデータに変換す
る。また、ソケット通信やiostream関数を使用
して、監視対象装置アプリケーション53、OS52、
及びハードウェア51を介して監視装置60にXMLデ
ータを送信する。
The executable program 13a is a program corresponding to the executable program 13 described in the first embodiment, and converts the monitoring information 54 into XML data. Further, by using socket communication or the iostream function, the monitored device application 53, the OS 52,
Also, the XML data is transmitted to the monitoring device 60 via the hardware 51.

【0039】監視装置60は、ハードウェア61、ハー
ドウェア61上で動作するOS62、OS62上で動作
する監視装置アプリケーション63からなる。監視装置
60は、監視対象装置50からハードウェア61、OS
62及び監視装置アプリケーション63を介してXML
データを受信すると、実行可能プログラム13bでXM
Lデータから所望のデータ形式への変換を行なう。実行
可能プログラム13bも第1の実施の形態で説明した実
施可能プログラム13に相当するプログラムである。変
換後のデータは利用者アプリケーション64に渡され
る。利用者アプリケーション64は監視装置アプリケー
ション63を構成する一プログラムであり、受け取った
データに対して所定の処理を施してユーザインタフェー
スアプリケーション65に渡す。ユーザインタフェース
アプリケーション65は、監視装置アプリケーション6
3を構成する一プログラムであり、受け取ったデータを
ディスプレイ66に表示する。
The monitoring device 60 comprises hardware 61, an OS 62 operating on the hardware 61, and a monitoring device application 63 operating on the OS 62. The monitoring device 60 includes the hardware 61, the OS from the monitored device 50.
62 via the monitor application 63 and the monitor application 63
When the data is received, XM is executed by the executable program 13b.
The L data is converted into a desired data format. The executable program 13b is also a program corresponding to the executable program 13 described in the first embodiment. The converted data is passed to the user application 64. The user application 64 is a program that constitutes the monitoring device application 63, performs predetermined processing on the received data, and passes the data to the user interface application 65. The user interface application 65 is the monitoring device application 6
3, which is one program constituting the data No. 3, and displays the received data on the display 66.

【0040】このようにして、監視対象装置50で取得
した監視情報54はXMLデータとして監視装置60に
送信され、ディスプレイ66に表示される。こうして、
監視システムの利用者は、監視対象装置50で取得され
る監視情報54を遠隔地で知ることができる。
In this way, the monitoring information 54 acquired by the monitored device 50 is transmitted to the monitoring device 60 as XML data and displayed on the display 66. Thus
The user of the monitoring system can know the monitoring information 54 acquired by the monitored device 50 at a remote location.

【0041】利用者から監視情報を操作する場合は、利
用者の入力をユーザインタフェースアプリケーション6
5が受信し、利用者アプリケーション64に送信する。
利用者アプリケーション64は、実行可能プログラム1
3bを用いて、XMLデータを監視対象装置アプリケー
ション53に送信する。監視対象装置アプリケーション
53では、受信したXMLデータを利用者アプリケーシ
ョン55が実行可能プログラム13aを用いて変換し、
受信した内容に従い、監視情報54の更新を行なう。ま
たは、監視対象装置アプリケーション53を介して、O
S52を制御したり、更にハードウェア51を制御す
る。
When operating the monitoring information from the user, the user interface application 6 needs to be input by the user.
5 receives and sends to the user application 64.
The user application 64 is the executable program 1
3b is used to send the XML data to the monitored device application 53. In the monitoring target device application 53, the user application 55 converts the received XML data using the executable program 13a,
The monitoring information 54 is updated according to the received contents. Alternatively, through the monitoring target device application 53, O
It controls S52 and further controls the hardware 51.

【0042】このようにして、監視対象装置アプリケー
ション53及び監視装置アプリケーション63は互いに
XMLデータで通信を行い、それぞれXMLデータを取
り扱うことが可能となる。
In this way, the monitoring target device application 53 and the monitoring device application 63 can communicate with each other by XML data and handle the XML data respectively.

【0043】3.第3の実施の形態 第2の実施の形態の監視システムでは、監視対象装置5
0と監視装置60とが一対一に対応していた。これに対
して、第3の実施の形態の監視システムでは、監視対象
装置と監視装置の対応関係が一定ではなく、不特定多数
の監視対象装置が不特定多数の監視装置による監視を受
ける。ここでは、説明の便宜上、監視対象装置と監視装
置とを2基ずつ備えるシステムを例示する。
3. Third Embodiment In the monitoring system of the second embodiment, the monitored device 5
0 and the monitoring device 60 have a one-to-one correspondence. On the other hand, in the monitoring system of the third embodiment, the correspondence between the monitoring target devices and the monitoring devices is not constant, and an unspecified number of monitoring target devices are monitored by the unspecified number of monitoring devices. Here, for convenience of description, a system including two monitoring target devices and two monitoring devices is illustrated.

【0044】図6を参照して説明すると、第3の実施の
形態では、2基の監視対象装置50a及び50b、並び
に、2基の監視装置60a及び60bがネットワーク7
0を介して接続されている。ネットワーク70はLAN
(Local Area Network)、WAN
(Wide Area Network)、インターネ
ット等が考えられる。監視装置60aは、必要に応じて
監視対象装置50a及び50bのどちらでも監視するこ
とができる。同様に、監視装置60bは、必要に応じて
監視対象装置50a及び50bのどちらでも監視するこ
とができる。
Referring to FIG. 6, in the third embodiment, two monitoring target devices 50a and 50b and two monitoring devices 60a and 60b are connected to the network 7.
It is connected through 0. Network 70 is a LAN
(Local Area Network), WAN
(Wide Area Network), the Internet, etc. are considered. The monitoring device 60a can monitor both of the monitoring target devices 50a and 50b as necessary. Similarly, the monitoring device 60b can monitor both of the monitoring target devices 50a and 50b as necessary.

【0045】監視対象装置50a及び50bに対応する
監視対象装置50について図7を参照して説明する。第
2の実施の形態における監視対象装置50と比較する
と、XMLデータの入出力先がネットワーク70である
点と、監視対象装置アプリケーション53が通信管理ア
プリケーション56を含む点とが異なる。
The monitored device 50 corresponding to the monitored devices 50a and 50b will be described with reference to FIG. Compared to the monitored device 50 in the second embodiment, the difference is that the input / output destination of the XML data is the network 70 and the monitored device application 53 includes the communication management application 56.

【0046】また、監視装置60a及び60bに対応す
る監視装置60について図8を参照して説明する。第2
の実施の形態における監視装置60と比較すると、同様
に、XMLデータの入出力先がネットワーク70である
点と、監視対象装置アプリケーション63が通信管理ア
プリケーション67を含む点とが異なる。
The monitoring device 60 corresponding to the monitoring devices 60a and 60b will be described with reference to FIG. Second
Compared with the monitoring device 60 according to the embodiment, similarly, the input / output destination of the XML data is the network 70, and the monitored device application 63 includes the communication management application 67.

【0047】通信管理アプリケーション56及び67
は、ネットワーク70を介した通信を管理するプログラ
ムであり、具体的には、複数のコネクションの管理や、
暗号チェック等の処理を行なう。データを受信する場合
は、実行可能プログラム13を使ってXML形式のデー
タを所望のデータ形式に変換し、利用者アプリケーショ
ン55または64に変換後のデータを渡す。一方、デー
タを送信する場合は、利用者アプリケーション55また
は64からデータを受け取ると、実行可能プログラム1
3を使ってXML形式のデータに変換した後、ネットワ
ーク70に送出する。
Communication management applications 56 and 67
Is a program for managing communication via the network 70, and specifically, for managing a plurality of connections,
Performs processing such as encryption check. When receiving the data, the executable program 13 is used to convert the XML format data into a desired data format, and the converted data is passed to the user application 55 or 64. On the other hand, when transmitting data, when the data is received from the user application 55 or 64, the executable program 1
3 is used to convert the data into XML format, and then the data is sent to the network 70.

【0048】第3の実施の形態によれば、複雑な通信管
理を行なうことができるので、不特定多数の装置を任意
に組み合わせ、この組み合わせた装置間でXMLデータ
の送受信を行なうことができる。
According to the third embodiment, since complicated communication management can be performed, an unspecified number of devices can be arbitrarily combined, and XML data can be transmitted and received between the combined devices.

【0049】以上、本発明を実施の形態に基づいて説明
したが、本発明はこれに限定されるものではなく、当業
者の通常の知識の範囲内でその変更や改良が可能である
ことは勿論である。
Although the present invention has been described based on the embodiments, the present invention is not limited to this, and modifications and improvements can be made within the scope of ordinary knowledge of those skilled in the art. Of course.

【0050】[0050]

【発明の効果】本発明によれば、DTD定義から簡便な
APIを提供し、そのAPIが通信機能を持つことによ
り、以下に記載するような効果を奏する。
According to the present invention, a simple API is provided from the DTD definition, and the API has a communication function, so that the following effects can be obtained.

【0051】(1)XactDTDコンパイラにより、
厳密な型チェックの行われる構造体が生成されるため、
XMLデータの取り扱い、アプリケーションの実装が容
易になる。
(1) By the Xact DTD compiler,
Since a structure with strict type checking is generated,
Handling of XML data and implementation of applications become easy.

【0052】(2)APIが通信機能を持つことによ
り、XMLデータの送受信が容易になる。
(2) Since the API has a communication function, it becomes easy to send and receive XML data.

【0053】(3)DTD定義の範囲内で、INT型等
のPRIMITIVEな型定義を規定することにより、
アプリケーションの実装が容易になる。
(3) By defining a PRIMITIVE type definition such as INT type within the range of the DTD definition,
Easy to implement application.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の第1の実施の形態である実行可能プロ
グラムの生成方法を説明するためのフローチャートであ
る。
FIG. 1 is a flowchart illustrating a method for generating an executable program according to a first embodiment of this invention.

【図2】XactDTD定義1の一例である。FIG. 2 is an example of XactDTD definition 1.

【図3】C++で記述された利用者プログラム5の一例
である。
FIG. 3 is an example of a user program 5 written in C ++.

【図4】図3の利用者プログラム5をコンパイルして生
成した実行可能プログラム13を実行すると出力するX
MLデータである。
4 is an X output when an executable program 13 generated by compiling the user program 5 of FIG. 3 is executed.
It is ML data.

【図5】本発明の第2の実施の形態である監視システム
の機能ブロック図である。
FIG. 5 is a functional block diagram of a monitoring system according to a second embodiment of the present invention.

【図6】本発明の第3の実施の形態である監視システム
のネットワーク構成を説明する図である。
FIG. 6 is a diagram illustrating a network configuration of a monitoring system according to a third embodiment of this invention.

【図7】第3の実施の形態における監視対象装置50の
機能ブロック図である。
FIG. 7 is a functional block diagram of a monitoring target device 50 according to the third embodiment.

【図8】第3の実施の形態における監視装置60の機能
ブロック図である。
FIG. 8 is a functional block diagram of a monitoring device 60 according to a third embodiment.

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

1 XactDTD定義 2 XactDTDプリプロセッサ 3 XactDTDプログラム 4 XactDTDヘッダファイル 5 利用者プログラム 6、8 コンパイラ 7 利用者実行プログラム 9 XactDTD実行プログラム 10 XactDTDライブラリ 11 通信クラスライブラリ 12 リンク 13 実行可能プログラム 50、50a、50b 監視対象装置 51、61 ハードウェア 52、62 オペレーティングシステム(OS) 53 監視対象装置アプリケーション 54 監視情報 55、64 利用者アプリケーション 60、60a、60b 監視装置 63 監視装置アプリケーション 65 ユーザインタフェースアプリケーション 66 ディスプレイ 70 ネットワーク 1 XactDTD definition 2 Xact DTD preprocessor 3 Xact DTD program 4 XactDTD header file 5 user program 6, 8 compiler 7 user execution program 9 XactDTD execution program 10 Xact DTD Library 11 Communication class library 12 links 13 executable programs 50, 50a, 50b Monitored device 51, 61 hardware 52, 62 Operating System (OS) 53 Monitored device application 54 Monitoring information 55, 64 User application 60, 60a, 60b monitoring device 63 Monitoring device application 65 User Interface Application 66 display 70 network

───────────────────────────────────────────────────── フロントページの続き (72)発明者 日浦 潔 東京都三鷹市上連雀1−1−5−506 Fターム(参考) 5B081 AA10 CC01 CC41    ─────────────────────────────────────────────────── ─── Continued front page    (72) Inventor Kiyoshi Hiura             Kamirenjaku 1-1-5-506, Mitaka City, Tokyo F-term (reference) 5B081 AA10 CC01 CC41

Claims (15)

【特許請求の範囲】[Claims] 【請求項1】 利用者プログラムをコンパイルして実行
可能オブジェクトを生成する方法において、 予め定められた構造体の定義をマークアップ言語を用い
て記述した定義ファイルを生成する段階1と、 前記定義ファイルを、高水準言語で記述したプログラム
ファイル及びヘッダファイルに変換する段階2と、 前記ヘッダファイルをインクルードしたプログラムであ
って、前記高水準言語で記述した利用者プログラムを生
成する段階3と、 前記プログラムファイル及び利用者プログラムをコンパ
イルして実行可能オブジェクトを生成する段階4とを含
むことを特徴とする実行可能オブジェクト生成方法。
1. A method of compiling a user program to generate an executable object, the step 1 of generating a definition file in which a definition of a predetermined structure is described using a markup language, and the definition file. Is converted into a program file and a header file described in a high-level language, and a step 3 is a program including the header file and a user program described in the high-level language is generated. A step 4 of compiling a file and a user program to generate an executable object.
【請求項2】 請求項1に記載の実行可能オブジェクト
生成方法において、前記マークアップ言語はXML(e
Xtensible Markup Languag
e)であることを特徴とする実行可能オブジェクト生成
方法。
2. The executable object generation method according to claim 1, wherein the markup language is XML (e.
Xtensible Markup Languag
e) An executable object generation method characterized in that
【請求項3】 請求項1及び2のいずれかに記載の実行
可能オブジェクト生成方法において、前記構造体はデー
タの型定義を含むことを特徴とする実行可能オブジェク
ト生成方法。
3. The executable object generation method according to claim 1, wherein the structure includes a data type definition.
【請求項4】 請求項3に記載の実行可能オブジェクト
生成方法において、前記データは数値データであること
を特徴とする実行可能オブジェクト生成方法。
4. The executable object generation method according to claim 3, wherein the data is numerical data.
【請求項5】 請求項1乃至4のいずれかに記載の実行
可能オブジェクト生成方法において、前記段階4は、 前記プログラムファイル及び利用者プログラムをコンパ
イルして再配置可能オブジェクトを生成する段階と、 前記再配置可能オブジェクトと、予め用意したライブラ
リとをリンクして前記実行可能オブジェクトを生成する
段階とを含むことを特徴とする実行可能オブジェクト生
成方法。
5. The executable object generation method according to claim 1, wherein the step 4 is a step of compiling the program file and a user program to generate a relocatable object. A method of generating an executable object, comprising the step of linking a relocatable object with a library prepared in advance to generate the executable object.
【請求項6】 請求項1乃至5のいずれかに記載の実行
可能オブジェクト生成方法において、前記段階2は、前
記定義ファイルを、夫々異なる高水準言語で記述した前
記プログラムファイル及びヘッダファイルに変換するこ
とを特徴とする実行可能オブジェクト生成方法。
6. The method for generating an executable object according to claim 1, wherein the step 2 converts the definition file into the program file and header file described in different high level languages. An executable object generation method characterized by the above.
【請求項7】 予め定められた構造体の定義をマークア
ップ言語で記述した定義ファイルを、高水準言語で記述
したプログラムファイル及びヘッダファイルに変換する
処理を、コンピュータに実行させるプリプロセッサプロ
グラム。
7. A preprocessor program for causing a computer to execute a process of converting a definition file in which a definition of a predetermined structure is described in a markup language into a program file and a header file described in a high level language.
【請求項8】 高水準言語で記述された利用者プログラ
ムをコンパイルして実行可能オブジェクトを生成する処
理をコンピュータに実行させるプログラムにおいて、 予め定められた構造体の定義をマークアップ言語で記述
した定義ファイルを、前記高水準言語で記述したプログ
ラムファイル及びヘッダファイルに変換する処理1と、 前記ヘッダファイルをインクルードした前記利用者プロ
グラム、及び、前記プログラムファイルを、コンパイル
して実行可能オブジェクトを生成する処理2とをコンピ
ュータに実行させることを特徴とする実行可能オブジェ
クト生成プログラム。
8. In a program for causing a computer to execute a process of compiling a user program written in a high-level language to generate an executable object, a definition of a predetermined structure written in a markup language. Process 1 for converting a file into a program file and a header file described in the high-level language; a process for compiling the user program including the header file and the program file to generate an executable object 2. An executable object generation program characterized by causing a computer to execute 2 and.
【請求項9】 請求項8に記載の実行可能オブジェクト
生成プログラムにおいて、前記マークアップ言語はXM
L(eXtensible MarkupLangua
ge)であることを特徴とする実行可能オブジェクト生
成プログラム。
9. The executable object generation program according to claim 8, wherein the markup language is XM.
L (eXtensible Markup Language)
An executable object generation program characterized by being ge).
【請求項10】 請求項8及び9のいずれかに記載の実
行可能オブジェクト生成プログラムにおいて、前記構造
体はデータの型定義を含むことを特徴とする実行可能オ
ブジェクト生成プログラム。
10. The executable object generation program according to claim 8, wherein the structure includes a data type definition.
【請求項11】 請求項10に記載の実行可能オブジェ
クト生成プログラムにおいて、前記データは数値データ
であることを特徴とする実行可能オブジェクト生成プロ
グラム。
11. The executable object generation program according to claim 10, wherein the data is numerical data.
【請求項12】 請求項8乃至11のいずれかに記載の
実行可能オブジェクト生成プログラムにおいて、前記処
理2は、 前記プログラムファイル及び利用者プログラムをコンパ
イルして再配置可能オブジェクトを生成する処理と、 前記再配置可能オブジェクトと、予め用意したライブラ
リとをリンクして前記実行可能オブジェクトを生成する
処理とを含むことを特徴とする実行可能オブジェクト生
成プログラム。
12. The executable object generation program according to claim 8, wherein the processing 2 compiles the program file and a user program to generate a relocatable object, An executable object generation program including a process of linking a relocatable object and a library prepared in advance to generate the executable object.
【請求項13】 請求項8乃至11のいずれかに記載の
実行可能オブジェクト生成プログラムにおいて、前記処
理1は、前記定義ファイルを、夫々異なる高水準言語で
記述したプログラムファイル及びヘッダファイルに変換
することを特徴とする実行可能オブジェクト生成プログ
ラム。
13. The executable object generation program according to claim 8, wherein the processing 1 converts the definition file into a program file and a header file described in different high level languages. An executable object generation program characterized by:
【請求項14】 請求項7乃至13のいずれかに記載の
プログラムを格納した記録媒体。
14. A recording medium storing the program according to claim 7.
【請求項15】 請求項14に記載の記録媒体を格納し
たコンピュータ。
15. A computer in which the recording medium according to claim 14 is stored.
JP2002040398A 2002-02-18 2002-02-18 Executable object generating method and program Pending JP2003241974A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002040398A JP2003241974A (en) 2002-02-18 2002-02-18 Executable object generating method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002040398A JP2003241974A (en) 2002-02-18 2002-02-18 Executable object generating method and program

Publications (1)

Publication Number Publication Date
JP2003241974A true JP2003241974A (en) 2003-08-29

Family

ID=27781146

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002040398A Pending JP2003241974A (en) 2002-02-18 2002-02-18 Executable object generating method and program

Country Status (1)

Country Link
JP (1) JP2003241974A (en)

Similar Documents

Publication Publication Date Title
US7680800B2 (en) Algorithm to marshal/unmarshal XML schema annotations to SDO dataobjects
JP5268220B2 (en) Method, system and computer product for analyzing binary data
Peng An assessment framework for the development of Internet GIS
US9448812B2 (en) Algorithm for updating XML schema registry using schema pass by value with message
ES2219393T3 (en) METHODS AND APPLIANCES FOR THE EFFICIENT TRANSPORT OF INTERACTIVE APPLICATION DATA BETWEEN A CUSTOMER AND A SERVER USING BRAND LANGUAGE.
US7607128B2 (en) Method and system for enabling a server application to be executed in the same virtual machine as a client application using direct object oriented programming method calls
US7065742B1 (en) System and method for dynamically processing declarative language instance data
US20050114378A1 (en) System and method for providing a standardized adaptor framework
US7559052B2 (en) Meta-model for associating multiple physical representations of logically equivalent entities in messaging and other applications
US20120191840A1 (en) Managing Application State Information By Means Of A Uniform Resource Identifier (URI)
US20030233477A1 (en) Extensible infrastructure for manipulating messages communicated over a distributed network
US8458672B2 (en) Facilitating the utilization of complex data objects
US20060230057A1 (en) Method and apparatus for mapping web services definition language files to application specific business objects in an integrated application environment
BRPI0619763B1 (en) system and method for triggered optimization of web services communication history
JP2005018777A (en) Common query runtime system and application programming interface
JP2009054151A (en) Communication message instance generation method, data instance generation method, communication message instance generation apparatus, and computer readable medium
US7630784B2 (en) Method and apparatus for independent deployment of roles
MXPA06000106A (en) Web application architecture.
US8296723B2 (en) Configurable unified modeling language building blocks
JP2006500650A (en) Configuration services for autonomous computation
CN111125597B (en) Webpage loading method, browser, electronic equipment and storage medium
US7434200B2 (en) Using incremental generation to develop software applications
US7107279B2 (en) Rapid development in a distributed application environment
Engelen A framework for service-oriented computing with C and C++ Web service components
JP2003241974A (en) Executable object generating method and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Effective date: 20050114

Free format text: JAPANESE INTERMEDIATE CODE: A621

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071121

A131 Notification of reasons for refusal

Effective date: 20071212

Free format text: JAPANESE INTERMEDIATE CODE: A131

A521 Written amendment

Effective date: 20080212

Free format text: JAPANESE INTERMEDIATE CODE: A523

A02 Decision of refusal

Effective date: 20080312

Free format text: JAPANESE INTERMEDIATE CODE: A02