JPH0728719A - コード変換方式 - Google Patents

コード変換方式

Info

Publication number
JPH0728719A
JPH0728719A JP5153714A JP15371493A JPH0728719A JP H0728719 A JPH0728719 A JP H0728719A JP 5153714 A JP5153714 A JP 5153714A JP 15371493 A JP15371493 A JP 15371493A JP H0728719 A JPH0728719 A JP H0728719A
Authority
JP
Japan
Prior art keywords
server
code
remote
side system
character
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
JP5153714A
Other languages
English (en)
Inventor
Takashi Murakami
貴史 村上
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP5153714A priority Critical patent/JPH0728719A/ja
Publication of JPH0728719A publication Critical patent/JPH0728719A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Computer And Data Communications (AREA)
  • Communication Control (AREA)

Abstract

(57)【要約】 【目的】 コード変換方式に関し、クライアント側シス
テムに適切なコードコンバータがない場合でも、ほとん
どすべてのサーバ側システムを利用できるようにする。 【構成】 環境変数32に基づいて起動されたアプリケ
ーションプログラム3は、サブルーチン5を呼び出す。
サブルーチン5は環境変数32と自己の識別子とともに
遠隔サービス提供ルーチン6を起動する。遠隔サービス
提供ルーチン6は、サービスデータベース9を検索して
利用可能なサーバおよび遠隔コードコンバータをリスト
アップするとともに、所定の基準で実際に使用するサー
バ11および遠隔コードコンバータ10を選択する。遠
隔サービス提供ルーチン6は、遠隔コードコンバータ1
0を中継してサーバ11との通信を行って、サーバ11
による処理結果をクライアントシステム2側の文字コー
ドでサブルーチン5に返す。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はコード変換方式に係り、
特にコンピュータネットワークにおけるサーバとクライ
アントとの間のデータ伝送の際に用いられるコード変換
方式に関する。
【0002】
【従来の技術】従来、コンピュータネットワークにおけ
るサーバとクライアントとの間のデータ伝送の際に用い
られるコード変換方式としては、次に述べるような4種
類の方式が実用化されている。
【0003】第1の従来方式では、クライアント側のア
プリケーションプログラムが、クライアント側システム
が用いる文字コードと、通信相手であるサーバ側システ
ムが用いる文字コードとを認識した後、アプリケーショ
ンプログラムがクライアント側システムの文字コードを
サーバ側システムの文字コードに変換してデータ伝送を
行っていた。この方式については、多数の公知例が知ら
れている。
【0004】第2の従来方式では、クライアント側のア
プリケーションプログラムが、クライアント側システム
が用いる文字コードと、ネットワーク上で共通に用いる
文字コード(以後、共通コードと記載する)とを認識し
た後、アプリケーションプログラムがクライアント側シ
ステムの文字コードを共通コードに変換してデータ伝送
を行うとともに、サーバ側システムが伝送された共通コ
ードをクライアント側システムの文字コードに再変換し
ていた。この方式については、シー・シー・アイ・ティ
ー・ティー勧告エックス.411,メッセージ・ハンド
リング・システムズ:メッセージ・トランスファ・シス
テム:アブストラクト・サービス・デフィニション・ア
ンド・プロシジャース,1988年(CCITT Recommendation
X.408 MESSAGE HANDLING SYSTEMS:MESSAGE TRANSFER SY
STEM ABSTRACT SERVICE DEFINITIONAND PROCEDURES,198
8)の355頁に記載されているほか、多数の公知例が知
られている。
【0005】第3の従来方式では、クライアント側シス
テムがサーバ側システムに対して使用している文字コー
ドを問い合わせて、双方の文字コードが同一である場合
には無変換でデータ伝送を行い、双方の文字コードが異
なる場合にはクライアント側システムの文字コードから
サーバ側システムの文字コードまたは共通コードに変換
してデータ伝送を行っていた。また、後者の場合に変換
が不可能である場合には、通信不可として処理を行って
いた。
【0006】第4の従来方式では、予めネットワーク上
のデータベースに登録されたサーバ側システムの文字集
合および文字コードの情報を、クライアント側システム
がクライアント側システムの文字コードと照合して、最
適と思われるサーバ側システムを選択した後、クライア
ント側システムがクライアント側システムの文字コード
からサーバ側システムの文字コードに変換してデータ伝
送を行っていた。この方式については、ディー・シー・
イー,インタオペラビリティ(アイ14ワイ),コード
セット・コンバージョン・モデルズ,オー・エス・エフ
アイ18エヌシグ プレゼンテーション,ジャニュア
リー1993(DEC Interoperability(I14Y)Codeset Convers
ion Models OSF I18N SIG Presentation-January 1993)
に記載されている。
【0007】
【発明が解決しようとする課題】上記従来のコード変換
方式においては、以下に述べるような問題点があった。
【0008】第1の従来方式においては、サーバ側シス
テムで用いられる文字コードが変更された場合には、ク
ライアント側のアプリケーションプログラムをすべて変
更しなければならないため、この変更作業によって多大
な時間と労力とが浪費されてしまうという問題点があっ
た。
【0009】第2の従来方式においては、クライアント
側システムの文字コードとサーバ側システムの文字コー
ドとが同一であった場合でも、それぞれ共通コードへの
変換を行わなければならなかったため、変換過程でデー
タロスが生じたり、データ伝送処理に長時間を要するこ
とがあるという問題点があった。
【0010】第3の従来方式においては、クライアント
側システムの文字コードとサーバ側システムの文字コー
ドとの相互変換が不可能であった場合には通信不可とし
て処理されてしまうため、クライアント側システムと同
一の文字コードあるいは相互変換可能な文字コードを用
いており、先のサーバと同等のサービスを提供している
代替サーバを見出すには、ユーザが再び処理操作を行っ
て他のサーバに対する問い合わせを行わなければならな
いという問題点があった。また、文字コード変換により
データロスが発生するが、その制御方法について考慮さ
れていなかったため、ユーザの意図しない結果(許容で
きるデータロスなのに通信が行われない、許容できない
データロスなのに処理が行われる、など)が生じる可能
性があるという問題点があった。
【0011】第4の従来方式においては、クライアント
側システムとサーバ側システムの文字コードが異なる場
合には、クライアント側システム内にサーバ側システム
の文字コードまたは共通コードへのコードコンバータを
具備していなければ通信そのものを行うことができない
という問題点があった。
【0012】したがって本発明の目的は、上記の問題点
を解決して、コード変換に関するクライアント側システ
ムの負担を軽減するとともに、常に最適なデータ伝送を
実現することのできるコード変換方式を提供することに
ある。
【0013】
【課題を解決するための手段】上記の目的を達成するた
め、クライアント側システムのサービス要求に対応して
サーバ側システムがサービスを提供する際に、前記クラ
イアント側システムで用いられる文字コードと、前記サ
ーバ側システムで用いられる文字コードとの間のコード
変換を行うコード変換方式において、ネットワーク上に
予め用意され、ネットワークで用いられることが予定さ
れる複数種類の文字コードの間のコード変換処理を行う
複数種類の遠隔コードコンバータと、ネットワーク上に
予め用意され、すべてのサーバ側システムおよび前記複
数種類の遠隔コードコンバータに関する情報とを保持し
ており、すべてのクライアント側システムから検索可能
とされたサービスデータベースとを具備するものであ
る。
【0014】また、前記クライアント側システムは、前
記サービスデータベースの検索と、前記サーバ側システ
ムおよび前記遠隔コードコンバータの組合せの選択と、
前記クライアント側システムおよび前記遠隔コードコン
バータの間のデータの中継とを専門的に行う遠隔サービ
ス提供手段を具備するものである。
【0015】また、前記サーバ側システムに送信するデ
ータを構成するために実際に使用されている文字集合の
範囲を検出する文字集合識別手段を具備するものであ
る。
【0016】
【作用】上記構成に基づく作用を説明する。
【0017】本発明のコード変換方式では、クライアン
ト側システムのサービス要求に対応してサーバ側システ
ムがサービスを提供する際に、前記クライアント側シス
テムで用いられる文字コードと、前記サーバ側システム
で用いられる文字コードとの間のコード変換を行うコー
ド変換方式において、ネットワーク上に予め用意され、
ネットワークで用いられることが予定される複数種類の
文字コードの間のコード変換処理を行う複数種類の遠隔
コードコンバータと、ネットワーク上に予め用意され、
すべてのサーバ側システムおよび前記複数種類の遠隔コ
ードコンバータに関する情報とを保持しており、すべて
のクライアント側システムから検索可能とされたサービ
スデータベースとを具備する。
【0018】このため、クライアント側システムがサー
ビスデータベースの検索と、最適なサーバ側システムお
よび遠隔コードコンバータの組合せの選択とを自動的に
行った後、クライアント側システムで用いられる文字コ
ードと、サーバ側システムで用いられる文字コードとの
間のコード変換を遠隔コードコンバータによって行うこ
とにより、クライアント側システムが具備しているコー
ドコンバータの種類とは無関係に、ほとんどすべてのサ
ーバ側システムを利用できるようになり、サービスの選
択範囲を拡大することができるとともに、常に最適なデ
ータ伝送を実現させることができる。
【0019】また、前記クライアント側システムは、前
記サービスデータベースの検索と、前記サーバ側システ
ムおよび前記遠隔コードコンバータの組合せの選択と、
前記クライアント側システムおよび前記遠隔コードコン
バータの間のデータの中継とを専門的に行う遠隔サービ
ス提供手段を具備するため、クライアント側システムに
おけるアプリケーションプログラム,サブルーチン,遠
隔サービス提供ルーチンの三者は、その処理過程が完全
に分離されて互いに依存しなくなる。すなわち、三者間
のインタフェースを考慮するだけで、それぞれ独自に作
成や変更を行うことが可能となるため、クライアント側
システムの保守性や生産性を向上させることができる。
【0020】また、前記サーバ側システムに送信するデ
ータを構成するために実際に使用されている文字集合の
範囲を検出する文字集合識別手段を具備するため、サー
バ側システムおよび遠隔コードコンバータの選択範囲を
より拡大して、さらに最適なデータ伝送を実現させるこ
とができる。
【0021】
【実施例】図1および図2は、本発明のコード変換方式
の原理的な処理フローを示す図である。
【0022】同図中、ステップ101において、利用者
またはシステム管理者は、ネットワークに接続された各
々のサーバ側システムが提供するサービスプログラムに
関する情報(サービスプログラムの所在,サービス内
容,使用可能な文字コードおよび文字集合など)と、ネ
ットワーク上の遠隔コードコンバータに関する情報(遠
隔コードコンバータの所在,変換可能な文字コードな
ど)を、ネットワーク上における共通の形式で、ネット
ワークに接続されているサービスデータベースにあらか
じめ登録しておく。
【0023】ステップ102において、利用者はクライ
アント側システムで参照される環境変数に対して、文字
集合ID,符号化ID,保証範囲,コード変換に関する
優先順位などの設定を行う。文字集合IDはアプリケー
ションプログラム中で使用する文字集合(英大文字の
み,英数字など)を、符号化IDは符号化技法(ASCII,
EBCDICなど)を、保証範囲はサーバ側システムとの通信
において保証されるべき文字集合の範囲(文字集合の一
部または全部)を、コード変換に関する優先順位はデー
タの保証と処理速度のどちらを優先するか,文字集合識
別ルーチンを使用するか否かなどの指定を、それぞれ示
す。
【0024】ステップ103において、クライアント側
システムの利用者はアプリケーションプログラム(A
P)を起動する。このアプリケーションプログラムは、
その処理過程でネットワークを介して接続されたサーバ
側システム上のサービスプログラムから提供される機能
を用いるものとする。
【0025】ステップ104において、アプリケーショ
ンプログラムは、ステップ102で利用者が設定した環
境変数の内容を参照し、これにしたがって動作環境を決
定する。
【0026】ステップ105において、アプリケーショ
ンプログラムは所定のサブルーチンを呼び出す。
【0027】ステップ106において、クライアント側
システムの環境変数に上述した文字集合ID,符号化I
D,保証範囲,コード変換に関する優先順位などの文字
コード情報が設定されていると判定された場合には、ス
テップ107aでサブルーチンが上記文字コード情報の
設定内容を取得する。また、文字コード情報が設定され
ていないと判定された場合には、ステップ107bでサ
ブルーチンがシステムのデフォルト値を用いる。
【0028】ステップ108において、サブルーチンは
遠隔サービス提供ルーチンを呼び出して、アプリケーシ
ョンプログラムに提供するサービスを示す識別子(サー
ビスID)と、上記文字コード情報とを遠隔サービス提
供ルーチンに渡す。
【0029】ステップ109において、環境変数に文字
集合識別ルーチンを使用すべき指示が設定されていた場
合には、ステップ110で、遠隔サービス提供ルーチン
は文字集合識別ルーチンを使用して、文字集合IDを得
る。
【0030】ステップ111において、遠隔サービス提
供ルーチンは、文字コード情報のうちの符号化ID,文
字集合ID,保証範囲を参照して、クライアント側シス
テムに具備されているコードコンバータの中から使用可
能なものをリストアップする。これによって、クライア
ント側システムで現在用いられている文字コードから変
換できる文字コードの符号化ID(変換可能な符号化I
D)および文字集合IDが求められる。なお、クライア
ント側システムで現在用いられている文字コードの符号
化ID(現在の符号化ID)と変換可能な符号化IDを
総称して、「クライアント側システムの符号化」と呼
ぶ。
【0031】ステップ112において、遠隔サービス提
供ルーチンは、サービスID,クライアント側にお
ける現在の符号化IDおよび文字集合ID,クライア
ント側において変換可能な符号化IDおよび文字集合I
Dを検索キーとして、サービスデータベースを検索し、
検索結果として、サービスIDで示されるサービスを提
供できるネットワーク上のサービスプログラム(サー
バ)をリストアップする。リストアップされたサーバの
各エントリは、ネットワークにおけるサーバの識別
子,サーバの符号化ID,サーバの文字集合IDに
ついての情報を含んでいる。また、クライアント側にお
ける現在の符号化IDと同一の符号化IDを有するサー
バがネットワーク上に存在せず、かつ、クライアント側
において変換可能な符号化IDと同一の符号化IDを有
するサーバも存在しない場合には、クライアント側シス
テムの符号化とリストアップされたサーバの符号化との
コード変換を相互に行うことができるネットワーク上の
遠隔コードコンバータと対応するサーバをリストアップ
する。リストアップされた遠隔コードコンバータの各エ
ントリは、ネットワークにおける遠隔コードコンバー
タの識別子,遠隔コードコンバータの文字集合ID,
遠隔コードコンバータが変換可能な符号化IDについ
ての情報を含んでいる。このとき、同様の検索結果がク
ライアント側システムのキャッシュに残っていた場合に
は、そのキャッシュから検索結果を得ることもある。
【0032】ステップ113において、検索結果として
サーバおよび遠隔コードコンバータのリストがともに得
られたと判定された場合には、ステップ114に分岐し
て本発明に特有の処理を開始し、そうでない場合にはス
テップ121に分岐する。ステップ121において、検
索結果としてサーバのリストが得られたと判定された場
合には、ステップ122に分岐して従来と同様の処理を
開始し、そうでない場合にはステップ127に分岐す
る。ステップ127では、サービスを提供できるサーバ
が見つからなかったため、遠隔サービス提供ルーチン
は、実行中のアプリケーションプログラムに対してエラ
ーを通知し、処理を終了する。なお、クライアント側シ
ステムにおいて検索結果をキャッシュできる場合は、検
索結果のキャッシュを行う。
【0033】ステップ114において、遠隔サービス提
供ルーチンは、ステップ112でリストアップされたサ
ーバの中から、実際に通信を行うサーバを決定する。サ
ーバの選択は、ステップ102における環境変数の設定
で利用者の指定した優先順位にしたがって、次のように
行われる。
【0034】A. データの保証を優先する場合 優先度文字集合IDがクライアント側システムと等し
く、かつ、符号化IDも等しいサーバを選択する。 優先度文字集合IDがクライアント側システムと等し
く、クライアント側で変換可能な符号化IDのサーバを
選択する。 優先度文字集合IDがクライアント側システムと等し
く、遠隔コードコンバータで変換可能な符号化IDのサ
ーバを選択する。 優先度文字集合IDが指定された保証範囲内にあり、
クライアント側と符号化IDが等しいサーバを選択す
る。 優先度文字集合IDが指定された保証範囲内にあり、
クライアント側で変換可能な符号化IDのサーバを選択
する。 優先度文字集合IDが指定された保証範囲内にあり、
遠隔コードコンバータで変換可能な符号化IDのサーバ
を選択する。 優先度エラーとして処理を終了する。
【0035】B. 変換速度を優先する場合 優先度文字集合IDがクライアント側システムと等し
く、かつ、符号化IDも等しいサーバを選択する。 優先度文字集合IDが指定された保証範囲内にあり、
クライアント側と符号化IDが等しいサーバを選択す
る。 優先度文字集合IDがクライアント側システムと等し
く、クライアント側で変換可能な符号化IDのサーバを
選択する。 優先度文字集合IDが指定された保証範囲内にあり、
クライアント側で変換可能な符号化IDのサーバを選択
する。 優先度文字集合IDがクライアント側システムと等し
く、遠隔コードコンバータで変換可能な符号化IDのサ
ーバを選択する。 優先度文字集合IDが指定された保証範囲内にあり、
遠隔コードコンバータで変換可能な符号化IDのサーバ
を選択する。 優先度エラーとして処理を終了する。
【0036】ステップ114のサーバ選択の結果、クラ
イアント側システムではコード変換できないが、遠隔コ
ードコンバータでコード変換すればサーバからのサービ
スを受けられる場合には、ステップ115で遠隔コード
コンバータの選択を行う。遠隔コードコンバータの選択
は、次のように行われる。
【0037】優先度文字集合IDがクライアント側シ
ステムと等しく、かつ、符号化IDも等しい遠隔コード
コンバータを選択する。 優先度文字集合IDがクライアント側システムと等し
く、クライアント側で変換可能な符号化IDの遠隔コー
ドコンバータを選択する。 優先度文字集合IDがクライアント側システムと等し
く、別の遠隔コードコンバータで変換可能な符号化ID
の遠隔コードコンバータを選択する。 優先度エラーとして処理を終了する。
【0038】ステップ116において、クライアント側
システムと遠隔コードコンバータの符号化IDが異なる
ときには、クライアント側システムが、使用される文字
コードを遠隔コードコンバータの符号化IDに対応する
文字コードに変換する。
【0039】遠隔コードコンバータの選択後、ステップ
117において、遠隔サービス提供ルーチンは遠隔コー
ドコンバータ経由で、サーバとの通信を開始する。そし
て、ステップ118で遠隔コードコンバータがクライア
ント側システムの符号化IDに対応する文字コードをサ
ーバの符号化IDに対応する文字コードに変換し、サー
バに送信する。ステップ119において、サーバは遠隔
コードコンバータからサーバの符号化IDに対応する文
字コードでデータを受け取って処理を行った後、同じく
サーバの符号化IDに対応する文字コードでデータを遠
隔コードコンバータに返送する。ステップ120におい
て、遠隔コードコンバータがサーバの符号化IDに対応
する文字コードをクライアント側システムの符号化ID
に対応する文字コードに変換し、クライアント側システ
ムに送信する。以上により、処理を完了する。
【0040】ステップ122において、遠隔サービス提
供ルーチンは、ステップ112でリストアップされたサ
ーバの中から、実際に通信を行うサーバを決定する。サ
ーバの選択は、ステップ114と同様に行われるので、
説明を省略する。ステップ123において、クライアン
ト側システムとサーバの符号化IDが異なるときには、
クライアント側システムが、使用される文字コードをサ
ーバの符号化IDに対応する文字コードに変換する。ス
テップ124において、遠隔サービス提供ルーチンはサ
ーバとの通信を開始する。そして、ステップ125にお
いて、クライアント側システムの符号化IDに対応する
文字コードを、クライアント側システムがサーバの符号
化IDに対応する文字コードに変換し、サーバに送信す
る。ステップ126において、サーバはクライアント側
システムからサーバの符号化IDに対応する文字コード
でデータを受け取って処理を行った後、同じくサーバの
符号化IDに対応する文字コードでデータをクライアン
ト側システムに返送する。以上により、処理を完了す
る。
【0041】以下、本発明のコード変換方式の実施例を
図面を用いて詳細に説明する。
【0042】図3は、本発明のコード変換方式を実現す
るためのシステム構成の第1実施例を示す図である。同
図中、1は利用者、2はクライアント側システム、3は
アプリケーションプログラム、31はバッファ、32は
環境変数、4はファイル、5はソートサブルーチン、6
は遠隔サービス提供ルーチン、7はクライアント側シス
テム2内で利用できるコンバータの情報が登録されたコ
ンバータデータベース、8はサービスデータベースキャ
ッシュ、9はネットワーク上のサーバおよび遠隔コード
コンバータの情報が登録されたサービスデータベース、
10はネットワーク上の遠隔コードコンバータ、11は
サーバである。
【0043】図4および図5は、図3における処理フロ
ーの一例を示す図であり、データの保証を利用者が指示
し、クライアント側システムと同一の符号化IDのサー
バは存在しなかったが、文字コードの変換を可能とする
遠隔コードコンバータがネットワーク上に存在していた
場合の処理を示す。
【0044】図4のステップ201において、利用者1
は、クライアント側システム2における環境変数32
を、次のように設定する。すなわち、アプリケーション
プログラム3を「文字集合〔ASCII+JISX0208+JISX0201
R〕を符号化〔KEIS〕で扱う」動作環境とし、データ保
証の範囲を「ASCII+JISX0208+JISX0201R」とするととも
にデータ保証優先とし、文字集合識別ルーチンを使用し
ないこととする。ステップ202で利用者1がアプリケ
ーションプログラム3を起動すると、ステップ203に
おいて、アプリケーションプログラム3は環境変数32
の指定にしたがって動作環境を上記のように設定する。
【0045】ステップ204において、アプリケーショ
ンプログラム3はファイル4からデータの読み込みを開
始する。本実施例では、ファイル4のデータは上記文字
集合からなる単語の列であるとする。すなわち、アプリ
ケーションプログラム3はファイル4から単語の列を読
み込み、一旦バッファ31に格納する。次にステップ2
05において、アプリケーションプログラム3はソート
サブルーチン5を呼び出し、バッファ31へのポインタ
を渡す。ステップ206において、ソートサブルーチン
5は、表1に示す環境変数32および自己のサービスI
Dの情報とともに遠隔サービス提供ルーチン6を呼び出
して、ソートというサービスを提供するサーバをリスト
アップするための検索を開始する。このとき、バッファ
31へのポインタを遠隔サービス提供ルーチン6に渡
す。
【0046】
【表1】
【0047】ステップ207において、遠隔サービス提
供ルーチン6は、表2に示す情報をもとにコンバータデ
ータベース7を検索して、クライアント側システムで変
換可能な符号化の情報を得る。本実施例では、クライア
ント側システムは文字集合ID〔ASCII+JISX0208+JISX0
201R〕,符号化ID〔AJEC〕に変換できるという検索結
果が得られたものとする。
【0048】
【表2】
【0049】ステップ208において、遠隔サービス提
供ルーチン6は、サービスデータベース9のキャッシュ
であるサービスデータベースキャッシュ8を、表3の情
報をもとに検索する。本実施例では目的とするデータが
キャッシュ8に格納されていなかったため、ステップ2
09において、同じく表3の情報をもとにサービスデー
タベース9の検索を行う。
【0050】
【表3】
【0051】ステップ210において、サービスデータ
ベース9からは、表4に示すサーバおよび遠隔コードコ
ンバータの情報が検索結果としてリストアップされる。
遠隔サービス提供ルーチン6は、この検索結果をキャッ
シュ8に格納する。
【0052】
【表4】
【0053】ステップ211〜213において、遠隔サ
ービス提供ルーチン6は、表4のサーバリストから、最
初に接続を試みるサーバを決定する。本実施例ではデー
タの保証優先とされているため、遠隔サービス提供ルー
チン6は、サーバリストの各候補について、図6に示す
アルゴリズムでサーバの優先順位に関するポイントの付
与を行って、最も高いポイントが付与されたサーバを図
3中のサーバ11として選択する。すなわち、ステップ
211において、oldcat:/bin/sortとクライアント側シ
ステムの文字集合IDは同一で、符号化IDは遠隔コー
ドコンバータで変換可能であるため、4ポイントを付与
する。ステップ212において、max:/bin/sort とクラ
イアント側システムの符号化IDは同一で、文字集合I
Dが保証範囲内であるため、3ポイントを付与する。そ
して、ステップ213において、oldcat:/bin/sortのポ
イント(4)がmax:/bin/sort のポイント(3)よりも
高いため、oldcat:/bin/sortをサーバ11として選択す
る。
【0054】ステップ214〜216において、遠隔サ
ービス提供ルーチン6は、サーバとの中継が可能な遠隔
コードコンバータの候補が複数あるため、表4の遠隔コ
ードコンバータリスト中の遠隔コードコンバータに対し
て図7に示すアルゴリズムで遠隔コードコンバータの優
先順位に関するポイントの付与を行って、最も高いポイ
ントが付与された遠隔コードコンバータを図3中の遠隔
コードコンバータ10として選択する。すなわち、ステ
ップ214において、firefox:/usr/bin/k2sjとクライ
アント側システムの符号化IDおよび文字集合IDは同
一であるため、3ポイントを付与する。ステップ215
において、firefox:/usr/bin/a2sj とクライアント側シ
ステムの文字集合IDは同一で、符号化IDはクライア
ント側システムで変換可能であるため、2ポイントを付
与する。そして、ステップ216において、firefox:/u
sr/bin/k2sj のポイント(3)がfirefox:/usr/bin/a2s
jのポイント(2)よりも高いため、firefox:/usr/bin/
k2sj を図3中の遠隔コードコンバータ10として選択
する。
【0055】ステップ217において、クライアント側
システム2内の遠隔サービス提供ルーチン6が、ネット
ワーク上の選択された遠隔コードコンバータ10(fire
fox:/usr/bin/k2sj )と通信路を設定する。さらに、ス
テップ218において、遠隔サービス提供ルーチン6が
遠隔コードコンバータ10に対して、サーバ11(oldc
at:/bin/sort)と通信路を設定すること、KEISとS
JISの変換を行うことを指示する。そしてステップ2
19において、遠隔サービス提供ルーチン6はバッファ
31に格納されているデータを、遠隔コードコンバータ
10に送信する。ステップ220において、遠隔コード
コンバータ10は、遠隔サービス提供ルーチン6から受
信したKEISで符号化されたデータをSJISに変換
して、サーバ11に送信する。ステップ221におい
て、サーバ11は受取ったデータをソートして、その結
果を遠隔コードコンバータ10に送り返す。ステップ2
22において、遠隔コードコンバータ10は、サーバ1
1から受信したSJISで符号化されたデータをKEI
Sに変換して、遠隔サービス提供ルーチン6に送信す
る。ステップ223において、遠隔サービス提供ルーチ
ン6は、遠隔コードコンバータ10から返されたデータ
をバッファ31に格納し、ソートサブルーチン5にバッ
ファ31へのポインタを渡す。ステップ224におい
て、ソートサブルーチン5は受け取ったデータすなわち
ソートされた結果をバッファ31に格納し、アプリケー
ションプログラム3にバッファ31へのポインタを渡
す。最後にステップ225において、アプリケーション
プログラム3は、バッファ31を参照してソートされた
結果を得る。
【0056】以上のように本実施例においては、アプリ
ケーションプログラムが用いる符号化IDの文字コード
をそのまま扱えるサービスプログラム(サーバ)がネッ
トワーク上に存在せず、かつ、クライアント側システム
にアプリケーションプログラムとサーバとの間の文字コ
ードの変換を行うコードコンバータが存在しない場合で
あっても、ネットワーク上にクライアント側システムと
サーバとの間の文字コードの変換を行うことのできる遠
隔コードコンバータが存在すれば、遠隔サービス提供ル
ーチンが自動的に遠隔コードコンバータ経由でサーバと
の通信を行うため、アプリケーションプログラムは全く
サーバを意識することなく、クライアント側システムで
は変換不可能な文字コードを使用するサーバが提供する
サービスを受けることができる。
【0057】図8は、本発明のコード変換方式を実現す
るためのシステム構成の第2実施例を示す図であり、本
実施例では文字集合識別ルーチンを使用する場合を示
す。同図中、図3と同一構成部分については同一符号を
付し、その説明を省略する。また、12は文字集合識別
ルーチンである。
【0058】利用者1は、クライアント側システム2に
おける環境変数32を、次のように設定する。すなわ
ち、アプリケーションプログラム3を「文字集合〔ASCI
I+JISX0208+JISX0201R〕を符号化〔KEIS〕で扱う」動作
環境とし、データ保証の範囲を「ASCII+JISX0208+JISX0
201R」とするとともに処理速度優先とし、文字集合識別
ルーチンを使用することとする。利用者1がアプリケー
ションプログラム3を起動すると、アプリケーションプ
ログラム3は環境変数32の指定にしたがって動作環境
を上記のように設定する。
【0059】アプリケーションプログラム3はファイル
4からデータの読み込みを開始する。本実施例では、フ
ァイル4のデータは上記文字集合からなる単語の列であ
るとする。すなわち、アプリケーションプログラム3は
ファイル4から単語の列を読み込み、一旦バッファ31
に格納する。次に、アプリケーションプログラム3はソ
ートサブルーチン5を呼び出し、バッファ31へのポイ
ンタを渡す。ソートサブルーチン5は、表5に示す環境
変数32および自己のサービスIDの情報とともに遠隔
サービス提供ルーチン6を呼び出して、ソートというサ
ービスを提供するサーバをリストアップするための検索
を開始する。このとき、バッファ31へのポインタを遠
隔サービス提供ルーチン6に渡す。
【0060】
【表5】
【0061】遠隔サービス提供ルーチン6は、文字集合
識別ルーチン10を起動して、バッファ31中のデータ
と環境変数32に設定された情報とを渡す。文字集合識
別ルーチン10は、環境変数32に設定されたクライア
ント側システム2における現在の符号化IDをもとに、
バッファ31に格納されているデータの解析を行う。こ
の解析は、次の手順で行う。 手順環境変数32に設定された文字集合IDの個数に
対応して、文字集合IDテーブルを文字集合識別ルーチ
ン10中に用意した後、すべてのテーブルにおける文字
集合ID使用フラグの初期値を“偽”に設定する。 手順環境変数32に設定された文字集合IDの識別名
称を、各々の文字集合IDテーブルの文字集合ID識別
変数に読み込む。 手順バッファ31に格納されたすべての文字につい
て、環境変数32に設定された文字集合IDとの比較を
行って、各文字が該当する文字集合ID使用フラグの値
を“真”に設定する。 手順文字集合識別ルーチン10は、文字集合ID使用
フラグの値が“真”とされている文字集合IDの識別名
称を、バッファ31に格納されたデータの文字集合ID
として、遠隔サービス提供ルーチン6に返す。
【0062】本実施例においては、遠隔サービス提供ル
ーチン6に対して〔ASCII+JISX0208〕という文字集合I
Dが返されるものとする。すなわち、これがクライアン
ト側システムの文字集合IDとして扱われる。
【0063】遠隔サービス提供ルーチン6は、表6に示
す情報をもとにコンバータデータベース7を検索し、ク
ライアント側システムで変換可能な符号化の情報を得
る。本実施例では、クライアント側システムは文字集合
ID〔ASCII+JISX0208+JISX0201R〕,符号化ID〔SJI
S〕に変換できるという検索結果が得られたものとす
る。
【0064】
【表6】
【0065】遠隔サービス提供ルーチン6は、サービス
データベース9のキャッシュであるサービスデータベー
スキャッシュ8を、表7の情報をもとに検索する。本実
施例では目的とするデータがキャッシュ8に格納されて
いなかったため、同じく表7の情報をもとにサービスデ
ータベース9の検索を行う。
【0066】
【表7】
【0067】サービスデータベース9からは、表8に示
すサーバおよび遠隔コードコンバータの情報が検索結果
としてリストアップされる。遠隔サービス提供ルーチン
6は、この検索結果をキャッシュ8に格納する。本実施
例においては、検索結果としてoldcat:/bin/sortのみが
得られたため、接続対象のサーバはoldcat:/bin/sortに
特定される。
【0068】
【表8】
【0069】遠隔サービス提供ルーチン6は、サーバと
の中継が可能な遠隔コードコンバータの候補が複数ある
ため、表8の遠隔コードコンバータリスト中の遠隔コー
ドコンバータに対して図7に示すアルゴリズムで遠隔コ
ードコンバータの優先順位に関するポイントの付与を行
って、最も高いポイントが付与された遠隔コードコンバ
ータを図8中の遠隔コードコンバータ10として選択す
る。すなわち、firefox:/usr/bin/k2aj とクライアント
側システムの符号化IDおよび文字集合IDは同一であ
るため、3ポイントを付与する。また、firefox:/usr/b
in/sj2ajとクライアント側システムの文字集合IDは同
一で、符号化IDはクライアント側システムで変換可能
であるため、2ポイントを付与する。そして、firefox:
/usr/bin/k2aj のポイント(3)がfirefox:/usr/bin/s
j2ajのポイント(2)よりも高いため、firefox:/usr/b
in/k2aj を図8中の遠隔コードコンバータ10として選
択する。
【0070】クライアント側システム2内の遠隔サービ
ス提供ルーチン6が、ネットワーク上の選択された遠隔
コードコンバータ10(firefox:/usr/bin/k2aj )と通
信路を設定する。さらに、遠隔サービス提供ルーチン6
が遠隔コードコンバータ10に対して、サーバ11(ol
dcat:/bin/sort)と通信路を設定すること、KEISと
AJECの変換を行うことを指示する。そして、遠隔サ
ービス提供ルーチン6はバッファ31に格納されている
データを、遠隔コードコンバータ10に送信する。遠隔
コードコンバータ10は、遠隔サービス提供ルーチン6
から受信したKEISで符号化されたデータをAJEC
に変換して、サーバ11に送信する。サーバ11は受取
ったデータをソートして、その結果を遠隔コードコンバ
ータ10に送り返す。遠隔コードコンバータ10は、サ
ーバ11から受信したAJECで符号化されたデータを
KEISに変換して、遠隔サービス提供ルーチン6に送
信する。遠隔サービス提供ルーチン6は、遠隔コードコ
ンバータ10から返されたデータをバッファ31に格納
し、ソートサブルーチン5にバッファ31へのポインタ
を渡す。ソートサブルーチン5は受け取ったデータすな
わちソートされた結果をバッファ31に格納し、アプリ
ケーションプログラム3にバッファ31へのポインタを
渡す。最後に、アプリケーションプログラム3は、バッ
ファ31を参照してソートされた結果を得る。
【0071】以上のように本実施例においては、実際に
サーバに送信される文字集合の範囲が、利用者の指定や
システムのデフォルト値で設定される文字集合の範囲よ
りも小さい場合には、遠隔サービス提供ルーチンから呼
び出される文字集合識別ルーチンによって実際のデータ
で使用される文字集合を調べてからサービスデータベー
スの検索が行われるため、サーバや遠隔コードコンバー
タの選択範囲が広がり、より適切な文字コードで通信で
きるようになり、コード変換によるオーバヘッドを低減
させて常に最適なデータ伝送を行うことができる。
【0072】
【発明の効果】以上詳しく説明したように、本発明のコ
ード変換方式によれば、クライアント側システムのサー
ビス要求に対応してサーバ側システムがサービスを提供
する際に、前記クライアント側システムで用いられる文
字コードと、前記サーバ側システムで用いられる文字コ
ードとの間のコード変換を行うコード変換方式におい
て、ネットワーク上に予め用意され、ネットワークで用
いられることが予定される複数種類の文字コードの間の
コード変換処理を行う複数種類の遠隔コードコンバータ
と、ネットワーク上に予め用意され、すべてのサーバ側
システムおよび前記複数種類の遠隔コードコンバータに
関する情報とを保持しており、すべてのクライアント側
システムから検索可能とされたサービスデータベースと
を具備する。
【0073】このため、クライアント側システムがサー
ビスデータベースの検索と、最適なサーバ側システムお
よび遠隔コードコンバータの組合せの選択とを自動的に
行った後、クライアント側システムで用いられる文字コ
ードと、サーバ側システムで用いられる文字コードとの
間のコード変換を遠隔コードコンバータによって行うこ
とにより、クライアント側システムが具備しているコー
ドコンバータの種類とは無関係に、ほとんどすべてのサ
ーバ側システムを利用できるようになり、サービスの選
択範囲を拡大することができるとともに、常に最適なデ
ータ伝送を実現させることができるという効果が得られ
る。
【0074】また、前記クライアント側システムは、前
記サービスデータベースの検索と、前記サーバ側システ
ムおよび前記遠隔コードコンバータの組合せの選択と、
前記クライアント側システムおよび前記遠隔コードコン
バータの間のデータの中継とを専門的に行う遠隔サービ
ス提供手段を具備するため、クライアント側システムに
おけるアプリケーションプログラム,サブルーチン,遠
隔サービス提供ルーチンの三者は、その処理過程が完全
に分離されて互いに依存しなくなる。すなわち、三者間
のインタフェースを考慮するだけで、それぞれ独自に作
成や変更を行うことが可能となるため、クライアント側
システムの保守性や生産性を向上させることができると
いう効果が得られる。
【0075】また、前記サーバ側システムに送信するデ
ータを構成するために実際に使用されている文字集合の
範囲を検出する文字集合識別手段を具備するため、サー
バ側システムおよび遠隔コードコンバータの選択範囲を
より拡大して、さらに最適なデータ伝送を実現させるこ
とができるという効果が得られる。
【図面の簡単な説明】
【図1】本発明のコード変換方式の原理的な処理フロー
を示す図(その1)である。
【図2】本発明のコード変換方式の原理的な処理フロー
を示す図(その2)である。
【図3】本発明のコード変換方式を実現するためのシス
テム構成の第1実施例を示す図である。
【図4】図3における処理フローの一例を示す図(その
1)である。
【図5】図3における処理フローの一例を示す図(その
2)である。
【図6】データ保証優先の場合のサーバに対する優先点
付与のアルゴリズムを示す図である。
【図7】遠隔コードコンバータに対する優先点付与のア
ルゴリズムを示す図である。
【図8】本発明のコード変換方式を実現するためのシス
テム構成の第2実施例を示す図である。
【符号の説明】
2 クライアント側システム 3 アプリケーションプログラム 6 遠隔サービス提供ルーチン 9 サービスデータベース 10 遠隔コードコンバータ 11 サーバ(サービスプログラム) 12 文字集合識別ルーチン

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 クライアント側システムのサービス要求
    に対応してサーバ側システムがサービスを提供する際
    に、前記クライアント側システムで用いられる文字コー
    ドと、前記サーバ側システムで用いられる文字コードと
    の間のコード変換を行うコード変換方式において、 ネットワーク上に予め用意され、ネットワークで用いら
    れることが予定される複数種類の文字コードの間のコー
    ド変換処理を行う複数種類の遠隔コードコンバータと、 ネットワーク上に予め用意され、すべてのサーバ側シス
    テムおよび前記複数種類の遠隔コードコンバータに関す
    る情報とを保持しており、すべてのクライアント側シス
    テムから検索可能とされたサービスデータベースとを具
    備することを特徴とするコード変換方式。
  2. 【請求項2】 前記クライアント側システムは、前記サ
    ービスデータベースの検索と、前記サーバ側システムお
    よび前記遠隔コードコンバータの組合せの選択と、前記
    クライアント側システムおよび前記遠隔コードコンバー
    タの間のデータの中継とを専門的に行う遠隔サービス提
    供手段を具備することを特徴とする請求項1記載のコー
    ド変換方式。
  3. 【請求項3】前記サーバ側システムに送信するデータを
    構成するために実際に使用されている文字集合の範囲を
    検出する文字集合識別手段を具備することを特徴とする
    請求項2記載のコード変換方式。
JP5153714A 1993-06-24 1993-06-24 コード変換方式 Pending JPH0728719A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5153714A JPH0728719A (ja) 1993-06-24 1993-06-24 コード変換方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5153714A JPH0728719A (ja) 1993-06-24 1993-06-24 コード変換方式

Publications (1)

Publication Number Publication Date
JPH0728719A true JPH0728719A (ja) 1995-01-31

Family

ID=15568498

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5153714A Pending JPH0728719A (ja) 1993-06-24 1993-06-24 コード変換方式

Country Status (1)

Country Link
JP (1) JPH0728719A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100703743B1 (ko) * 2005-02-18 2007-04-05 삼성전자주식회사 문자 코드 변환 장치 및 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100703743B1 (ko) * 2005-02-18 2007-04-05 삼성전자주식회사 문자 코드 변환 장치 및 방법

Similar Documents

Publication Publication Date Title
JPH1011374A (ja) キーワードによる電子メールアドレス検索方式
CN101246486B (zh) 用于改进的表达式处理的方法和装置
US6260059B1 (en) Knowledge provider system and knowledge providing method utilizing plural knowledge provider agents which are linked by communication network and execute message processing using successive pattern matching operations
US6230004B1 (en) Remote procedure calls using short message service
US6401102B1 (en) Virtual geographic spatial object generating system
KR100307973B1 (ko) 전자메일또는에이전트를이용하여클라이언트상에서gui를작성하는정보처리방법및정보처리장치,정보처리장치를제어하는프로그램을저장한기억매체
JP2002519762A (ja) プログラム可能なアドレス属性をもつ電子メールクライアント
US5313598A (en) Method for changing non-leaf entry in tree structure of OSI directory information by sequentially issuing OSI directory commands for the non-leaf entry and lower entries associated therewith in response to decoded change command
US20060136602A1 (en) Electronic data interchange apparatus
JPH11184670A (ja) ネットワークアクセスシステム、方法及び記録媒体
JPH0330342B2 (ja)
JPH0728719A (ja) コード変換方式
US20050015524A1 (en) Character string input device, character string input method, character string input program, and medium on which the program is recorded
WO2007057976A1 (ja) メール送受信プログラム、メール送受信方法およびメール送受信装置
NZ332456A (en) Service control point of advanced intelligent network handles requests from different types of service switching points
JPS62118655A (ja) プロトコル変換統合処理装置
JPH11154158A (ja) 検索メッセージプロトコル変換ゲートウェイシステム
JPH08272721A (ja) カスタマイズ環境データ転送装置
JP3367055B2 (ja) データ転送方法
EP0468403A2 (en) Method for management of information resources and system therefor
JPH07121415A (ja) ファイル管理装置
JPH0675845A (ja) データ変換自動化方法
JP2002132550A (ja) ドキュメント管理システム
JPH01263746A (ja) 登録者名簿自動管理システム
JPH09259117A (ja) かな漢字変換辞書学習装置およびその方法