Nothing Special   »   [go: up one dir, main page]

JP4529766B2 - 情報提供システム、情報提供方法、サーバ及び情報提供プログラム - Google Patents

情報提供システム、情報提供方法、サーバ及び情報提供プログラム Download PDF

Info

Publication number
JP4529766B2
JP4529766B2 JP2005105047A JP2005105047A JP4529766B2 JP 4529766 B2 JP4529766 B2 JP 4529766B2 JP 2005105047 A JP2005105047 A JP 2005105047A JP 2005105047 A JP2005105047 A JP 2005105047A JP 4529766 B2 JP4529766 B2 JP 4529766B2
Authority
JP
Japan
Prior art keywords
environment
information
name
environment setting
setting
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.)
Expired - Fee Related
Application number
JP2005105047A
Other languages
English (en)
Other versions
JP2006285666A (ja
Inventor
聡 横手
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 JP2005105047A priority Critical patent/JP4529766B2/ja
Publication of JP2006285666A publication Critical patent/JP2006285666A/ja
Application granted granted Critical
Publication of JP4529766B2 publication Critical patent/JP4529766B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、アプリケーションプログラムの動作に必要な情報に関し、特に、情報を効率的に格納及び取得することが可能な情報提供システム、情報生成方法、サーバ及び情報提供プログラムに関する。
従来、情報提供システムは、コンピュータシステムで動作する多くのアプリケーションプログラムが、その動作において、各アプリケーションプログラムの動作特性や実行環境等を設定した情報を必要とするので、あらかじめ各アプリケーションプログラムが要求する形式で、この情報が記憶装置のファイルに記述されており、アプリケーションプログラムの実行時に提供される。
このファイルは、アプリケーションプログラム毎、ユーザ毎、コンピュータ装置毎など、実行するアプリケーションプログラムと、アプリケーションプログラムを実行する際の実行環境に応じて個別に用意される。また、このファイルは、ファイルを格納する領域のうち、各アプリケーションプログラム、各実行環境に対応する固有の領域にそれぞれ分散して配置されている。
このような従来の情報提供システムの1例が、特許文献1に記載されている。
特許文献1に記載の情報抽出装置は、ユーザが要求する情報を、指定された電子文書を検索して抽出し、ユーザに提供する装置である。
特開2004−303160号公報
しかし、上述した従来の情報取得方法においては、以下に述べるような課題が存在する。
第1に、異なる実行環境において共通する情報(設定値が同じになる情報)については、実効環境にかかわらずアプリケーションプログラムが取得できなければならない。そのため、共通する情報が実行環境毎に各ファイルに記述されていなければない。よって、共通する情報であるにもかかわらず、複数のファイルを作成する必要があるため、多くの記憶容量を必要とするという課題である。
第2に、アプリケーションプログラムが、アプリケーションプログラムで共通となる情報(デフォルト設定の情報など)と、各実行環境にあわせて要求される情報とを別ファイルから取得する場合は、アプリケーションプログラムを作成するプログラマに負担がかかるという課題である。
その理由は、アプリケーションプログラムが、情報の取得のためファイルを参照する場合、共通となる情報が格納されたファイルと、各実行環境にあわせて要求される情報が格納されたファイルとをそれぞれ考慮して参照する必要があるため、アプリケーションプログラムが作成される工程において、ファイル参照処理に関し、独自の対応による処理を予め組み込むことをプログラマに要求するからである。
第3に、コンピュータシステム管理者が各ファイルの格納領域を把握することを困難にしているという課題である。
その理由は、ファイルが、コンピュータシステムの運用に伴って、アプリケーションプログラムやその実行環境毎に多数発生するからである。さらに、ファイル格納領域では、格納領域毎にファイルを格納するときのポリシーが異なるため、各ファイルがファイル格納領域内の各領域に分散して配置されるからである。
第4に、特許文献1に記載の装置では、検索対象の電子文書にユーザが要求する情報が存在しない場合でも、電子文書の全情報を検索しなければユーザが要求する情報が存在しないことが分からないため、新たな電子文書の情報の検索に処理が移行するのに時間を要することから、ユーザが要求する情報の検索に処理時間を要し、また、その情報取得のための処理に負担がかかるという課題である。
その理由は、ユーザが要求する情報の属性を識別できないので、無作為に検索する必要があるからである。
本発明の第1の目的は、プログラムの動作に必要な情報を、使用する記憶領域を減少し、効率的に格納できる情報提供システム、情報生成方法、サーバ及び情報提供プログラムを提供することにある。
本発明の第2の目的は、プログラムの動作に必要な情報を、処理負担及び処理時間を減少し、効率的に取得できる情報提供システム、情報生成方法、サーバ及び情報提供プログラムを提供することにある。
本発明の第3の目的は、プログラムの動作に必要な情報を、属性毎に識別し、管理者が容易に管理可能な情報提供システム、情報生成方法、サーバ及び情報提供プログラムを提供することにある。
本発明の第1の情報提供システムは、端末が実行するプログラムの動作に必要な情報を格納するサーバからネットワークを介して情報を端末に提供する情報提供システムにおいて、端末が、プログラム名と1以上の環境情報とから構成された環境名をサーバに送信する環境名送信手段と、サーバからプログラムの動作に必要な環境設定情報を受信する環境設定情報受信手段と、環境設定情報を用いてプログラムを実行するプログラム実行手段とを備え、サーバが、各プログラムについて、プログラム名を上位ノードとし、当該上位ノードの下に、そのプログラムが実行される環境を表す環境情報からなる下位ノードを階層的に接続してなる名前空間ディレクトリと、各ノードに対応して、設定項目と設定パラメータの組を1以上含む環境設定情報とを記憶する記憶手段と、端末から環境名を受信する環境名受信手段と、環境名に含まれるプログラム名の上位ノードから開始し、1以上の環境情報を含むノードを経路とするように名前空間ディレクトリを探索し、探索の過程において、経路上のノードに対応する環境設定情報を順次抽出して環境設定テーブルに登録していく環境設定情報抽出手段と、環境設定情報抽出手段による経路の探索が終了すると、環境設定テーブルに登録された環境設定情報を端末に送信する環境設定情報送信手段とを備え、下位ノードに対応する環境設定情報は、その上位ノードに対応する環境設定情報のうち少なくとも設定項目を継承すると共に、当該上位ノードに対応する環境設定情報に含まれない設定項目及びその設定値を含み得り、環境設定情報抽出手段は、登録の過程において、上位のノードと下位のノードに対応する環境設定情報のうち、設定項目が重複し、かつ、設定値が異なる場合は、下位のノードの設定値により上位のノードの設定値を上書きすることを特徴とする
本発明の好ましい態様では、端末が、サーバに特定情報を送信することによって情報を要求し、所定経路が、特定情報に基づいて特定される経路であることを特徴とする。具体的には、特定情報は、プログラムを識別する識別情報によって構成されることを特徴とする。
本発明のさらに好ましい態様では、特定情報は、ドット記号と、ドット記号によって区切られ、木構造の所定経路上のパラメータを示す文字列とにより構成されており、サーバが、ドット記号によって区切られた文字列が記述されている順序に基づいて特定される所定経路に沿って、木構造からパラメータを抽出することを特徴とする。
また、本発明のさらに好ましい態様では、サーバが、所定経路上の上位に格納したパラメータが有する属性を継承したパラメータを所定経路上の下位に格納し、所定経路に沿って抽出したパラメータの和集合により情報を生成することを特徴とする。
(作用)
本発明によれば、端末が実行するプログラムの動作に必要な情報を、プログラムに関する特定情報に対応させて木構造に従って格納しているので、特定情報によって、端末が実行するプログラムの動作に必要な情報を提供される。
さらに、本発明によれば、サーバが、所定経路上の上位に格納したパラメータが有する属性を継承したパラメータを所定経路上の下位に格納し、所定経路に沿って抽出したパラメータの和集合により情報を生成するので、同一の属性を有するパラメータが、所定経路上に格納される。すなわち、パラメータが属性ごとに分類されてサーバに格納される。
本発明によれば、以下に示す効果を得る。
第1に、プログラムの動作に必要な情報を構成するパラメータが、プログラムに関する特定情報に対応させて木構造に従ってサーバに格納されており、パラメータを、木構造上の所定経路に沿って抽出することによって情報を生成するので、プログラムの動作に必要な情報について、特定情報に基づいて、位置透過的に、また、効率的に取得できる。
第2に、サーバが、所定経路上の上位に格納したパラメータが有する属性を継承したパラメータを、所定経路上の下位に格納し、所定経路に沿って抽出したパラメータの和集合により情報を生成するので、プログラムの動作に必要な情報を、効率的に管理できる。
本発明の実施の形態について図面を参照して詳細に説明する。
(第1の実施の形態)
図1は、本発明の第1の実施の形態による環境設定情報提供システムの構成を示すブロック図である。
図1を参照すると、本実施の形態による環境設定情報提供システム100は、サーバ1とクライアント4とを備え、これらがネットワーク5を介して通信可能な状態にある。
(クライアントの構成)
クライアント4は、パーソナルコンピュータなどの通信端末であって、送信部41と、受信部42と、制御部43と、記憶部44とを備えている。
送信部41及び受信部42は、ネットワーク5を介してサーバ1とデータ通信をする機能有し、送信部41が、サーバ1に環境名6を送信し、受信部42が、環境名6に対応する環境設定情報7をサーバ1から受信し、制御部43に送信する。
環境名6は、環境設定情報7(後述)の探索に用いるための情報であって、「.(ピリオド)」で区切られた文字列から構成されている。
より詳細には、環境名6を構成する文字列が、名前空間ディレクトリ154(後述)の最上位のノードから、目的とするノードまでのノード名に対応しており、環境名6は、ノード名が順に「.(ピリオド)」で連結した形式で表現されるので、名前空間ディレクトリ154内で構成されている木構造上の経路情報を含む。
なお、環境名6は、アプリケーションプログラム441を識別する識別情報、アプリケーションプログラム441を実行するユーザの名前、アプリケーションプログラム441を実行するユーザが属するグループの名前、アプリケーションプログラム441を実行する環境に固有の環境情報など、アプリケーションプログラム441を特定する特定情報から構成される。
環境設定情報7は、クライアント4で実行するアプリケーションプログラム441の動作に必要な情報であり、アプリケーションプログラム441自身の動作特性として定義された情報や、アプリケーションプログラム441の実行条件に固有の情報等を有する。
すなわち、各環境設定情報7は、環境設定情報7を構成するパラメータとして、アプリケーションプログラム441の動作に必要な情報である、設定項目属性の属性値として定義される設定項目と、設定値属性の属性値として定義される設定値との情報等を含む。
より詳細に説明すると、環境設定情報7は、環境設定要素名1434(後述)で示される要素名と、設定項目属性名1435(後述)で示される属性(設定項目属性)と、設定値属性名1436(後述)で示される属性(設定値属性)を持つXMLノードであり、XML文書の何れの位置にあってもよい。
以上の説明から、例えば、環境設定要素名1434が「add」、設定項目属性名1435が「key」、設定値属性名1436が「value」であるとき、環境設定ファイル中の任意の位置に存在する「<add key=“COLOR” value=“WHITE” />」というXMLノードは、要素名が「add」であり、「key」と「value」の属性を持つので、環境設定情報を構成するパラメータであるといえ、設定項目が「COLOR」、設定値が「WHITE」であることを示している。
制御部43は、クライアント4内の各部及び各手段等を制御する機能を備えており、送信部41を介してサーバ1に環境名6を送信し、受信部42を介して環境設定情報7をサーバ1から受信する。また、環境設定情報問合せ手段431を有する。
環境設定情報問合せ手段431は、送信部41を介してサーバ1に環境名6を送信して環境設定情報を問い合わせ、受信部42を介してサーバ1から環境名6に対応する環境設定情報7を取得する機能を有する。
記憶部44は、情報を記憶しており、制御部43と情報の送受信を行う。また、アプリケーションプログラム441を備えている。
アプリケーションプログラム441は、環境設定情報問合せ手段431に、サーバ1へ環境名6を送信して環境設定情報の問合せをさせ、環境設定情報7を取得させるための手順を有する。
(サーバの構成)
サーバ1は、クライアント4からの環境名6をキーにした環境設定情報の問合せに対して、環境名6に応じた環境設定情報7を生成して応答する機能を有し、受信部11,送信部12,制御部13,記憶部14及びファイルシステム15を備えている。
すなわち、サーバ1は、環境設定情報を構成するパラメータを、アプリケーションプログラム441に関する特定情報である環境名6に一対一に対応させて木構造に従って格納しており、クライアント4から要求された環境設定情報を構成するパラメータを、木構造上の所定の経路に沿って抽出することにより、環境設定情報を生成してクライアント4に提供する。
所定の経路とは、クライアント4が、環境設定情報を要求するためにサーバ1に送信した環境名6に基づいて特定される経路である。
受信部11及び送信部12は、ネットワーク5を介してクライアント4とデータ通信をする機能有し、受信部11が、クライアント4から受信した環境名6を制御部13に送信し、送信部12が、環境名6に対応する環境設定情報7を制御部13から受信してクライアント4に送信する。
(制御部の構成)
制御部13は、受信部11を介して受信した環境名6に基づいて、ファイルシステム15から所定の情報を取得して、環境設定情報7として送信部12に送信する機能を備えており、環境設定情報生成制御手段131と、環境名分解手段132と、名前空間移動手段133と、環境設定テーブル構築手段134と、整形送信手段135とを備えている。
環境設定情報生成制御手段131は、受信部11及び送信部12と、環境名分解手段132と、名前空間移動手段133と、環境設定テーブル構築手段134と、整形送信手段135とを制御する機能を有する。
すなわち、環境設定情報生成制御手段131は、受信部11を介して受信した環境名6に基づき、各部及び各手段の一連の動作を制御して環境設定情報7を生成する機能を有し、生成した環境設定情報7を送信部12に送信する。
また、環境設定情報生成制御手段131は、受信した環境名6を、記憶部14が有するパラメータ抽出要素143の環境名保存領域1431(後述)に保存する。
環境名分解手段132は、環境名保存領域1431に保存された環境名6から、次に探索すべき名前空間ディレクトリ154のノード名(ディレクトリ名)を取得するため、環境名6を構成する文字列を分解する機能を有する。
より詳細には、環境名分解手段132は、環境名6を構成する「.(ピリオド)」で区切られた文字列を、名前空間ディレクトリ154のノード名として分解し、環境名保存領域1431に保存された環境名6を構成する文字列の先頭から順に取り出す。
なお、環境設定情報生成制御手段131は、環境名分解手段132を順次呼び出すことで、名前空間ディレクトリ154のノード名を上位ノードから順次抽出するので、名前空間ディレクトリ154の探索経路を得ることができる。
名前空間移動手段133は、名前空間ディレクトリ154(後述)が有していて探索対象となる探索ノードを、環境名分解手段132で取得された下位のノードに移す機能を有する。
環境設定テーブル構築手段134は、XMLパーサ1341と、設定項目結合手段1342とを備えている。
環境設定テーブル構築手段134は、ファイル読み出し手段153(後述)で読み出した環境設定ファイルによって示された環境設定情報を構成するパラメータを用いることで、環境設定テーブル142を構築する。
なお、環境設定テーブル構築手段134は、環境設定テーブル142を構築する一連の処理で、XMLパーサ1341と設定項目結合手段1342を用いる。
XMLパーサ1341は、XML文書を解釈するために広く流通しているソフトウェア部品であり、XMLパーサ1341において一般的であるDOM(Document Object Model,後述)インタフェースを備え、XPath式によって要素の選択が可能なものを使用する。すなわち、XMLパーサ1341は、アプリケーションプログラムでXMLの技術を用いて記述された文書を、様々なアプリケーションプログラムで扱えるようにするツールである。
本実施の形態において、XMLパーサ1341は、XMLで記述されている環境設定ファイルを、各ノード毎にデータの変換をして、DOMツリー141を作成する。
なお、XPathとは、木構造で表現したXML文書の内容の特定の要素を指し示すための記述方法を定めた周知の規格であるため、説明を省略する。
設定項目結合手段1342は、環境設定テーブル構築手段134の制御に基づいて、ファイル読み出し手段153で読み出した環境設定ファイルより得られ、XMLパーサ1341でDOMツリー141の構成要素とされた環境設定情報のパラメータから、設定項目と設定値と(を示す情報)を取り出して、環境設定テーブル142(後述)の行に追加する機能を有する。
なお、設定項目結合手段1342は、名前空間ディレクトリ154のより下位に配置されたノードの環境設定ファイルから作成されたDOMツリー141の構成要素の内容を優先し、パラメータの和集合により環境設定情報を生成する。従って、環境設定テーブル142に追加を試みた設定項目を持つ行がすでに環境設定テーブル142に存在する場合は、設定値を上書きする。
整形送信手段135は、環境設定テーブル142から取得した、環境設定テーブル142に存在する全ての行をXML形式に変換し、環境設定情報生成制御手段131へ送信する機能を有する。
(ファイルシステムの構成)
図2は、本発明の第1の実施の形態による環境設定情報提供システムの1部の構成を示すブロック図である。
図2を参照すると、本実施の形態による環境設定情報提供システム100は、サーバ1上に、ファイルシステム15を備える。
ファイルシステム15は、下位ディレクトリ取得手段151と、ディレクトリ移動手段152と、ファイル読み出し手段153と、名前空間ディレクトリ154とから構成される。
また、ファイルシステム15は、ディレクトリによる階層的なファイル管理が可能で、作業中であるディレクトリを示すカレントディレクトリの概念を有し、木構造からなる名前空間ディレクトリ154(後述)を構築する。
すなわち、ファイルシステム15は、各ノードに対応付けられ、木構造により階層的に保持されている環境設定ファイルについて、環境名6の文字列によって示される経路情報に応じて名前空間ディレクトリ154が探索され、該当する環境設定ファイルが有する環境設定情報のパラメータが取得されるためのシステムである。
また、ファイルシステム15は、上位のノードに対応付けられている環境設定ファイルほど汎用的で、下位のノードに対応付けられている環境設定ファイルほど詳細な設定が記述されている。
なお、ファイルシステム15は、一般的に普及しているファイルシステムであって、サーバ1は、名前空間ディレクトリ154を、ファイルシステム15を用いて実現する。
下位ディレクトリ取得手段151は、作業中であるディレクトリを示すカレントディレクトリの直下のディレクトリ一覧を取得する機能を有する。
すなわち、下位ディレクトリ取得手段151は、現在探索されている探索ノード(カレントディレクトリ)の下位に保持されている下位ノードの有無を判定し、下位ノードが存在する場合には、下位ノードの内容である下位ディレクトリを取得し、このディレクトリの名前を名前空間移動手段133に送信する。
ディレクトリ移動手段152は、名前空間移動手段133から送信されたディレクトリの名前に基づき、カレントディレクトリを任意のディレクトリの任意のノードに移動する機能を有しており、例えば、カレントディレクトリを名前空間ディレクトリ154のルートノード2000となるディレクトリ(起点ディレクトリ)へ移動する。
また、ディレクトリ移動手段152は、環境名分解手段132により取得された、次に探索すべきノード名(ディレクトリ名)が、下位ディレクトリ取得手段151により下位ノードに存在すると判定された場合に、現在探索されている探索ノード(カレントディレクトリ)を、下位ディレクトリ取得手段151によって取得された下位ノードに移動して、新たに探索する探索ノードとして設定する。
ファイル読み出し手段153は、名前空間ディレクトリ154(後述)の探索ノード(カレントディレクトリ)上にある任意のファイルの内容を読み出し、環境設定テーブル構築手段134に送信する機能を有する。
図3は、本実施の形態によるファイルシステム1が備える名前空間ディレクトリの構成を示す樹形図である。
図3を参照すると、本実施の形態による名前空間ディレクトリ154は、ルートノード2000を頂点とする木構造で構成されており、ファイルシステム15のディレクトリを用いて表現される。
ルートノード2000は、例えばノード2100,2200のようなノードを、下位に複数保持可能である。
ノード2100,2200のような、ルートノード2000の直下にあるノードを、名前空間ディレクトリ154の最上位ノードという。
ルートノード2000以外のノードは、上位ノードが必ず1つ存在し、複数の下位ノードと、1つの環境設定ファイルを保持可能である。すなわち、ルートノード2000以外のノードは、環境設定ファイルを保持しなくても良い。また、実体的内容を含まない環境設定ファイルを保持しても良い。実体的内容が含まれる、含まれないにかかわらず、全てのノードがそれぞれ環境設定ファイルを保持する場合は、名前空間ディレクトリ154の経路上の全てのノードが、環境設定ファイルを必ず保持することになるので、環境名6を構成する文字列と環境設定ファイルとが1対1で対応し、カテゴライズされ易くなる。
例えば、ノード2100は、環境設定ファイル2100Aを保持し、ノード2100が下位に保持するノード2110,2120は、それぞれ環境設定ファイル2110A,2120Aを保持する。
また、同様に、ノード2200は、環境設定ファイル2200Aを保持し、ノード2200が下位に保持するノード2210,2220は、それぞれ環境設定ファイル2210A,2220Aを保持し、ノード2210が下位に保持するノード2211,2212,2213は、それぞれ環境設定ファイル2211A,2212A,2213Aを保持する。
なお、本実施の形態による環境設定ファイル2100A,2110A,2120A,2200A,2210A,2220A,2211A,2212A,2213Aは、環境設定ファイル名1433「config.xml」で共通する。
名前空間ディレクトリ154を構成する各ノードの内容は、ファイルシステム15の各ディレクトリである。
そのうち、ルートノード2000の内容は、起点ディレクトリ名1432が示すファイルシステム15のディレクトリと等しい。
ルートノード2000以外のノードのノード名は、ファイルシステム15のディレクトリ名と等しい。
また、名前空間ディレクトリ154は、探索ノードという概念を持つ。
探索ノードとは、名前空間ディレクトリ154の探索を行って環境設定ファイルを読み出すときの、読み出し対象となるノードのことである。そして、名前空間ディレクトリ154は、この探索ノードに基づき、最上位ノードから下位のノードへ順に探索される。
なお、探索ノードは、ファイルシステム15のカレントディレクトリと等しい。
また、各ノードが保持可能な環境設定ファイルの内容は、各ノードの内容であるファイルシステム15の該当ディレクトリ上のファイルの内容であり、環境設定ファイルのファイル名である環境設定ファイル名1433(後述)は、該当ディレクトリ上のファイルのファイル名と等しい。
すなわち、環境設定ファイル名1433で指定したファイル名を持つファイルが、環境設定ファイルとして認識される。
また、名前空間ディレクトリ154は、所定経路上の上位に配置された環境設定ファイルが有する属性を、所定経路上の下位に配置された環境設定ファイルが見かけ上継承している。
なお、名前空間ディレクトリ154のノードの内容となるディレクトリ内に、環境設定ファイル名1433で指定した以外のファイル名を持つファイルが存在しても、サーバ1はこれを無視するので問題ない。
(記憶部の構成)
記憶部14は、情報を更新等して記憶する機能を有しており、図1に示すように、DOMツリー141と、環境設定テーブル142と、パラメータ抽出要素143とを備えている。
図4は、本実施の形態による環境設定情報提供システムの記憶部におけるDOMツリーの構成を示す樹形図である。
図4を参照すると、本実施の形態によるDOMツリー141は、XMLパーサ1341が、XMLの技術を用いて記述されている環境設定ファイルの内容を、名前空間ディレクトリ154の経路上のノード毎に抽出することによって変換し、それぞれ生成したデータにより構成される。
すなわち、本実施の形態によるDOMツリー141は、名前空間ディレクトリ154の経路上のノード毎に作成される。
なお、XML文書が木構造で表現可能なことは周知の事実である。
DOMツリー141は、例えば、「<add key=“COLOR” value=“WHITE”>」というXMLノードを有する。
図5は、本実施の形態による環境設定情報提供システムの記憶部における環境設定テーブルを示す図である。
図4を参照すると、本実施の形態による環境設定テーブル142は、環境設定テーブル構築手段134が構築する表形式のデータによって構成されており、環境設定テーブル構築手段134によって順次追加される複数の環境設定ファイルの各環境設定情報のパラメータを和集合により蓄積する。
また、環境設定テーブル142は、0行以上の「行」で構成されており、この「行」は、環境設定情報から取り出した設定項目と設定値との組を示す。
図6は、本実施の形態による環境設定情報提供システムの記憶部におけるパラメータ抽出要素の構成を示すブロック図である。
図6を参照すると、本実施の形態によるパラメータ抽出要素143は、生成する環境設定情報のパラメータを抽出するために用いられる文字列等の要素を記憶しており、環境名保存領域1431と、起点ディレクトリ名1432と、環境設定ファイル名1433と、環境設定要素名1434と、設定項目属性名1435と、設定値属性名1436とから構成される
環境名保存領域1431は、クライアント4から問合せのあった環境名6を、サーバ1が応答処理中の間、保存しておく記憶領域である。
なお、保存された環境名6を構成する文字列は、環境名6を構成する文字列が含むノード名が、環境名分解手段132によって順次切り出される度に短くなり、環境名6についての応答処理が終了した時点で0文字になる。
起点ディレクトリ名1432は、名前空間ディレクトリ154の構成要素であるルートノード2000を示す。なお、起点ディレクトリ名1432が示すファイルシステム15のディレクトリの内容は、ルートノード2000の内容と等しい。
環境設定ファイル名1433は、各ノードが保持可能であり、環境設定情報を構成する複数のパラメータで構成され、文書やデータの意味や構造を記述するためのマークアップ言語の一種であるXML(eXtensible Markup Language)で記述される環境設定ファイルのファイル名を示す。
環境設定要素名1434は、環境設定ファイル中の任意の位置に存在するXMLノードのインデックスを示す文字列である。
設定項目属性名1435は、環境設定要素名1434によって示されたXMLノードの記述のうち、アプリケーションプログラム441の動作に必要な設定項目を環境設定情報7の構成要素であるパラメータとして抽出するための文字列を示す。
設定値属性名1436は、環境設定要素名1434によって示されたXMLノードの記述のうち、アプリケーションプログラム441の動作に必要な設定値を環境設定情報7の構成要素であるパラメータとして抽出するための文字列を示す。
(クライアントの動作)
図7を参照してクライアントの動作を説明する。
図7は、クライアント4の動作を示すフローチャートである。
最初に、アプリケーションプログラム441に処理させる環境設定情報7を取得するための環境名6を設定する(ステップA1)。
例えば、アプリケーションプログラム「ap1」を、ユーザ「user1」が利用する場合の環境名6は「ap1.user1」と設定される。
なお、当然であるが、「ap1」や、「user1」などの環境名の命名規則は、クライアント1側とサーバ4側で取り決めておく。
さらに、サーバ1の管理者は、予めファイルシステム15に上記環境名6に対応する名前空間ディレクトリ154(図3参照)を構築し、各ノードに環境設定ファイルを用意しておく。
例えば、起点ディレクトリ名1432が「/configs」の場合、ファイルシステム15にディレクトリ名「/configs/ap1」と「/configs/ap1/user1」のディレクトリを作成する。
すなわち、最上位ノードであるディレクトリの名前「/configs/ap1」で示される該当ディレクトリ上のファイルの内容を、アプリケーションプログラム「ap1」に共通の設定となる環境設定ファイルの内容として配置する。
また、ユーザ「user1」によってアプリケーションプログラム「ap1」が用いられる場合に、最上位ノードの下位のノード内容であり、ディレクトリ名「/configs/ap1」の下位のディレクトリ名「/configs/ap1/user1」の内容である該当ディレクトリ上のファイルの内容を、「user1」専用となる環境設定ファイルの内容として配置する。
ステップA1で設定された環境名6を入力し、環境設定情報問合せ手段431を呼び出す(ステップA2)。
環境設定情報問合せ手段431が、入力された環境名6を、送信手段41を介してサーバ1に送信する(ステップA3)。
環境設定情報問合せ手段431が、受信手段42を介してサーバ1からの環境設定情報7の受信を待ち受ける(ステップA4)。
環境設定情報問合せ手段431は、環境名6をサーバ1に送信した応答として送られてきた環境設定情報7をサーバ1から受信し、この受信が完了すると、受信によって取得した環境設定情報7をアプリケーションプログラム441に引き渡す(ステップA5)。
アプリケーションプログラム441は、環境設定情報問合せ手段431から引き渡された環境設定情報7を適宜解釈し、アプリケーションプログラム441自身の動作特性を決定する(ステップA6)。
以上のような手順で動作特性を決定したアプリケーションプログラム441によって、クライアント1は、その動作を実現する。
(サーバの動作)
サーバ1の動作の概略を説明する。
サーバ1は、クライアント4から環境名6を受信し、環境名6に含まれる経路情報に基づいて名前空間ディレクトリ154を探索し、その探索の過程で得られる複数の情報を和集合として蓄積し、環境名6に対応する環設定情報7を生成し、クライアント4に送信する。
図8〜図13は、本実施の形態による環境設定情報提供システムのサーバが備える制御部の各構成手段の動作を示すブロック図である。
以下に、図を参照し、サーバ1を構成する各手段の動作を詳細に説明する。
(環設定情報生成制御手段の動作)
図8は、サーバが備える制御部の環設定情報生成制御手段の動作を示すフローチャートである。
図8を参照して、制御部13が備える環設定情報生成制御手段131の動作を説明する。
環境設定情報生成制御手段131は、受信データの待ち受け状態にあり、受信部11を介して、クライアント4から送信された環境名6を受信する(ステップB1)。
環境設定情報生成制御手段131は、環境名6を受信すると、名前空間移動手段133のディレクトリ移動手段152を介して、カレントディレクトリをファイルシステム15(図2参照)の名前空間ディレクトリ154のルートノードとなるディレクトリへ移動させる(ステップB2)。
例えば、起点ディレクトリ名332が「/configs」であれば、ステップB2において、カレントディレクトリをディレクト名「/configs」で示されるディレクトリに移動させる。
クライアント4から問合せのあった環境名6を、パラメータ抽出要素143の環境名保存領域1431に保存する(ステップB3)。
例えば、問合せのあった環境名6が「ap1.user1」であれば、ステップB3において、環境名保存領域1431の保存内容は、「ap1.user1」となる。
送信手段12を介して、クライアント4にスタートノードを送信する(ステップB4)。
スタートノードは、環境設定情報7の始端を表すXML形式のノードである。
スタートノードのノード名は、以後送信するノードが環境設定情報7であると想像しやすい名前が好適で、本実施の形態では、「<CONFIG>」とする。
次いで、環境名保存領域1431に保存された環境名6から、次に探索すべき名前空間ディレクトリ154のノード名(ディレクトリ名)を、環境名分解手段132を用いて取得する(ステップB5)。
例えば、環境名保存領域1431に、環境名「ap1.user1」が保存されていた場合は、環境名分解手段132の1度目の呼び出しで、最初の「.(ピリオド)」までの文字列からなるノード名「ap1」を取得し、2度目の呼び出しでノード名「user1」を取得し、3度目の呼び出しで空文字(0文字)を取得することになる。
ステップB5で環境名分解手段132によって環境名6から取得したノード名を構成する文字列が、1文字以上あるか否か、すなわち、まだ探索するノードがあるか否かを判定する(ステップB6)。
ステップB6で、まだ探索するノードがあると判定した場合、下位ディレクトリ取得手段151によってこの探索するノード(下位のノード)を取得し、ディレクトリ移動手段152によって、探索ノードをこの下位のノード(ステップB5で取得したノード名のノード)へ移動させるように指示する(ステップB7)。
次いで、ディレクトリ移動手段152による探索ノードの移動の成否を判定する(ステップB8)。
ステップB8で探索ノードの移動が成功した場合、環境設定テーブル構築手段134を用いて移動後の探索ノードが保持する環境設定ファイルを読み出し、環境設定ファイルに存在する環境設定情報のパラメータを環境設定テーブル142に追加することによって、環境設定テーブル142を構築する(ステップB9)。
ステップB9で環境設定テーブル142を構築した後は、ステップB5に戻り、探索ノードの移動と環境設定ファイルの読み出し手順を繰り返す。
ステップB6において、ステップB5で取得したノード名が空文字であると判定すれば、目的のノードまで環境名6の探索を終えたと判断して名前空間ディレクトリ154の探索を終了する(ステップB10)。
ステップB10で探索を終了すると、環設定情報生成制御手段131は、整形送信手段135を用いて、環境設定テーブル142をXML形式に変換し、環境設定情報として取得する(ステップB11)。
なお、ステップB8で探索ノードの移動がエラーになった場合も探索を終了し、整形送信手段135を用いて、環境設定情報を取得する(ステップB12)。
ステップB12で送信する環境設定情報は、環境名6で示された全ノードを探索していない不完全な環境設定情報であるため、環設定情報生成制御手段131は、環境設定情報の受信後に、送信部12を介してクライアント4にXML形式のエラーノードを送信する(ステップB13)。
エラーノードは、環境設定情報の生成において、エラーが発生したと言う意味である。
エラーノードのノード名は、エラーの発生を想像しやすい名前が好適で、本実施の形態では「<ERROR />」とする。
なお、他の原因でエラーが発生する場合があれば、エラーノードにエラーの原因を表す属性を設けるとよい(例: <ERROR kind=“xml parse error” />)。
以上のような手順によって、環境設定情報生成制御手段131は、環境設定情報生成時におけるエラーの発生の有無にかかわらず、送信部12を介してクライアント4にストップノードを最後に送信し(ステップB14)、環境設定情報7の送信を完了する。
なお、ストップノードは、環境設定情報の終端を表すノードで、XMLの文法でスタートノードを閉じるノードでなければならない。本実施の形態では、「</CONFIG>」とする。
そして、環境設定情報生成制御手段131は、ステップB14終了後にステップB1に戻り、受信データの待ち受け状態となる。
なお、環境設定情報生成制御手段131は、各ステップにおいても、適宜所定の処理を繰り返して、次のステップに処理を移す。
(環境名分解手段の動作)
図9は、サーバが備える制御部の環境名分解手段の動作を示すフローチャートである。
図9を参照して、制御部13が備える環境名分解手段132の動作を説明する。
環境名分解手段132は、一時的な文字列を保存可能な変数「DIR」を作成する(ステップC1)。
環境名保存領域1431の環境名6を参照し(ステップC2)、環境名6中の「.(ピリオド)」の有無を判定する(ステップC3)。
環境名6が「.(ピリオド)」を含む場合とは、例えば、環境名6が「ap1.user1」や「editor.test.admin」などの場合である。
また、環境名6が「.(ピリオド)」を含まない場合とは、例えば、環境名6が「user1」や空文字(0文字)の場合である。
ステップC3で、環境名保存領域1431に保存された環境名6がピリオドを含むと判定された場合は、環境名保存領域1431に保存された環境名6の文字列の先頭から最初の「.(ピリオド)」の直前までの文字列を「DIR」に保存し(ステップC4)、環境名保存領域1431に保存された環境名6の文字列の先頭から最初のピリオドまでの文字列を削除する(ステップC5)。
例えば、環境名保存領域1431の環境名6が「ap1.user1」の場合、ステップC7において、「DIR」は「ap1」、環境名保存領域1431は「user1」となる。
ステップC3で環境名保存領域1431に保存された環境名6がピリオドを含まないと判定された場合は、環境名保存領域1431の全文字列を「DIR」に保存し(ステップC6)、環境名保存領域1431の全文字列を削除する(ステップC7)。
例えば、環境名保存領域1431の環境名6が「user1」の場合、「DIR」は「user1」、環境名保存領域1431は空文字となる。
環境名分解手段132は、次の探索ノード名となる、ステップC4又はステップC6で「DIR」に保存した文字列を、環境名分解手段132の呼び出し元である環境設定情報生成制御手段131に提供する(ステップC8)。
(名前空間移動手段の動作)
図10は、サーバが備える制御部の名前空間移動手段の動作を示すフローチャートである。
図10を参照して、制御部13が備える名前空間移動手段133の動作を説明する。
まず、名前空間移動手段133は、環境設定情報生成制御手段131によって、移動先ディレクトリ名(環境名保存領域1431に保存された環境名6から、環境名分解手段132により取り出した探索ノード名に等しい)を提供されて呼び出される。
名前空間移動手段133は、下位ディレクトリ取得手段151によって、カレントディレクトリの直下のディレクトリ(下位ディレクトリ)一覧を取得する(ステップD1)。
次いで、ステップD1で取得した下位ディレクトリ一覧に、環境設定情報生成制御手段131から提供された移動先ディレクトリが存在するか否かを判定する(ステップD2)。
ステップD2において、移動先ディレクトリが存在すると判定した場合、ディレクトリ移動手段152によって、探索対象となる探索ノードの内容であるカレントディレクトリを、次の探索対象となる探索ノードの内容である移動先ディレクトリに移動し(ステップD3)、呼び出し元である設定情報生成制御手段131に、移動に成功したことを示す移動成功情報を送信する(ステップD4)。
ステップD2において、移動先ディレクトリが存在しないと判定した場合は、呼び出し元である設定情報生成制御手段131に、移動に失敗したこと(エラーを)示すエラー情報を送信する(ステップD5)。
例えば、提供された移動先ディレクトリ名が「ap1」で、カレントディレクトリのディレクトリ名が「/configs」であり、ファイルシステム15(図2参照)にディレクトリ名「/configs/ap1」が存在する場合は、ステップD2において、移動先ディレクトリが存在すると判定し、カレントディレクトリをディレクトリ名「/configs/ap1」で示されるディレクトリに移動する。
また、ファイルシステム15に「/configs/ap1」が存在しない場合は、エラーとする。
(環境設定テーブル構築手段の動作)
図11は、サーバが備える制御部の環境設定テーブル構築手段の動作を示すフローチャートである。
図11を参照して、制御部13が備える環境設定テーブル構築手段134の動作を説明する。
環境設定テーブル構築手段134は、ファイル読み出し手段153によって、カレントディレクトリ(探索ノード)が保持する環境設定ファイル(図2参照)を読み出す(ステップE1)。
例えば、カレントディレクトリのディレクトリ名が「/configs/ap1」で、環境設定ファイル名1433が「config.xml」の場合、環境設定ファイルとして「/config/ap1/config.xml」の内容を読み出す。
ステップE1での環境設定ファイルの読み出しの成否を確認し(ステップE2)、環境設定ファイルの読み出しに失敗した場合(ファイルがない)は、特に何もせずに終了する。
環境設定ファイルの読み出しに成功した場合は、読み出した環境設定ファイルの内容をXMLパーサ1341が木構造に変換することによって生成したデータにより、記憶部14に環境設定ファイルのDOMツリー141(図4参照)を構築する(ステップE3)。
ステップE3で構築したDOMツリー141から、環境設定要素名1434が示す要素名と、設定項目属性名1435が示す属性名と、設定値属性名1436が示す属性名とを組にして保持するXMLノードを抽出するためのXPath式を生成する(ステップE4)。
例えば、環境設定要素名1434が示す要素名が「add」で、設定項目属性名1435が示す属性名が「key」で、設定値属性名1436が示す属性名が「value」の場合、ステップE4で生成するXPath式は、「//add[@key][@value]」となる。
ステップE4で生成したXPath式をXMLパーサ1341に入力することによって、DOMツリー141から、環境設定情報のパラメータを含んだXMLノードを抽出し、抽出したXMLノードから、最初の1ノードを選択する(ステップE5)。
選択したXMLノードが存在するか否かを判定し(ステップE6)、選択したXMLノードが存在する場合は、XMLパーサ1341を用いて、選択したXMLノードの設定項目及び設定値(を示す情報)を取得する(ステップE7)。
例えば、「<add key=“HIGHT” value=“100”>」というXMLノードからは、設定項目として「HIGHT」を、設定値として「100」を取得することになる。
設定項目結合手段1342を用いて、ステップE7で取得した設定項目及び設定値の組を環境設定テーブル142(図5参照)に追加する(ステップE8)。なお、設定項目結合手段1342の詳細な動作は、後述する。
ステップE5で抽出したXMLノードのうち、ステップE5〜E8で処理したXMLノードの次に処理するXMLノードを選択し(ステップE9)、ステップE6に戻る。
ステップE5で抽出した全てのXMLノードを処理すると、選択可能なXMLノードが存在しなくなるので、DOMツリー141を削除して(ステップE10)、環境設定テーブル142の構築を終了する。
以上のような手順により、環境設定テーブル構築手段134は、環境設定テーブル142を構築する。
なお、この後、環境設定テーブル構築手段134は、環境設定ファイルを読み出すときの読み出し対象となる探索ノードが残っていれば、環境設定情報生成制御手段131から再び呼び出されることになる。
(設定項目結合手段の動作)
図12は、サーバが備える制御部の設定項目結合手段の動作を示すフローチャートである。
図12を参照して、制御部13が備える設定項目結合手段1342の動作を説明する。
まず、設定項目結合手段1342は、環境設定テーブル構築手段134によって、設定項目と設定値(を示す情報)を提供されて呼び出される。
設定項目結合手段1342は、環境設定テーブル構築手段134から提供された設定項目と同じ設定項目を持つ行が、環境設定テーブル142(図5参照)に登録されているか検索する(ステップF1)。
ステップF1による検索の結果、環境設定テーブル構築手段134から提供された設定項目と同じ設定項目を持つ行が、環境設定テーブル142に登録されているか否かを判定し(ステップF2)、既に登録されている場合は、該当する行の設定値を、環境設定テーブル構築手段134から提供された設定値で上書きして終了する(ステップF3)。
例えば、既に環境設定テーブル142に、設定項目が「TIME OUT」、設定値が「10」の組からなる行が登録されており、環境設定テーブル構築手段134によって、設定項目として「TIME OUT」、設定値として「20」の組が新たに提供された場合は、ステップF3の実行後、環境設定テーブル142の設定項目「TIME OUT」の設定値「10」は、上書きされて「20」となる。
なお、環境設定情報を構成するパラメータである設定項目や設定値等が既に登録されているため、重複したパラメータを蓄積することとなる場合は、上位のノードほど汎用的で、下位のノードほど詳細な設定を記述した環境設定ファイルを保持していると仮定し、下位のノードが保持する環境設定ファイルのパラメータを優先して保持することとする。
ステップF2で、与えられた設定項目を持つ行が環境設定テーブル142に登録されていないと判定した場合は、新規の行として、環境設定テーブル142に、与えられた設定項目と設定値とを組にして登録し、終了する(ステップF4)。
以上のような手順により、設定項目結合手段1342は、設定値を上書きし、又は、設定項目を設定値と結合させて環境設定テーブル142に登録する。
(整形送信手段の動作)
図13は、サーバが備える制御部の整形送信手段の動作を示すフローチャートである。
図13を参照して、制御部13が備える整形送信手段135の動作を説明する。
まず、整形送信手段135は、環境設定テーブル構築手段134による名前空間ディレクトリ154の探索終了時に、環境設定情報生成制御手段131から呼び出される。
従って、名前空間ディレクトリ154(図3参照)の探索ノードを決定する環境名6に含まれるすべてのノードを探索した時点で、環境設定情報生成制御手段131から呼び出されるので、探索中に蓄積したパラメータを環境名6に対応する環境設定情報7として送信するための準備を行う。
整形送信手段135は、環境設定テーブル142(図5参照)を参照する(ステップG1)。
環境設定テーブル142に行が存在する場合は、環境設定テーブル142から先頭の1行を切り出し(ステップG2)、切り出した行の設定項目と設定値とを、環境設定要素名1434(「add」)と、設定項目属性名1435(「key」)と、設定値属性名1436(「value」)とに基づき、XML形式の環境設定情報に変換する(ステップG3)。
例えば、切り出した行の設定項目が「TIME OUT」で、設定値が「20」の場合、環境設定情報は、「<add key=“TIME OUT” value=“20”>」となる。
ステップG3で変換した環境設定情報を、変換の都度、環境設定情報生成制御手段131に提供する(ステップG4)。
以上のような手順により、整形送信手段135は、設定項目結合手段1342によって環境設定テーブル142に上書きされ、又は、組にして登録された設定項目と設定値とをXML形式の環境設定情報に変換する。
なお、環境設定情報生成制御手段131に提供後は、環境設定テーブル142から行が無くなるまで、ステップG1〜G4で示す、変換と送信のステップを繰り返す。
(本実施の形態の効果)
以下、本実施の形態によって得られる効果を述べる。
本実施の形態の第1の効果は、アプリケーションプログラム441が、そのインストール場所によらず、位置透過的に環境設定情報7を取得できることである。
その理由は、環境設定情報のパラメータを有する環境設定ファイルが、一般的な技術であるXMLを用いて記述され、また、環境名が、環境設定情報を構成するパラメータを属性により識別する識別情報を有するので、サーバ1が、環境設定情報7を要求する環境名6に基づいて、容易に環境設定情報7を生成できるからである。また、このようにして、容易に環境設定情報7を生成できることから、アプリケーションプログラム441が、独自の対応を必要とすることなく、サーバ1で生成された環境設定情報7をネットワーク5を介して取得できるからである。
すなわち、アプリケーションプログラム441は、そのインストール場所によらず、環境名6をサーバ1に問い合わせるだけで、位置透過的に環境名6に応じた環境設定情報7を取得できることとなる。また、アプリケーションプログラム441は、問い合わせ先のサーバ1を識別する情報(DNS名や、IPアドレスなど)と、実行環境に応じて一意に定まる環境名6のみを保持しておけばよいので、容易に環境設定情報7を取得できることとなる。
本実施の形態の第2の効果は、アプリケーションプログラム毎、ユーザ毎、コンピュータ毎など、実行するアプリケーションプログラム441と、その実行環境にあわせて必要となる多種多様な環境設定ファイルを一元的に容易に管理できることである。
その理由は、環境名6により環境設定情報7を問い合わせる方式では、環境設定ファイルの探索先が名前空間ディレクトリ154内に限定されるためである。
また、名前空間ディレクトリ154内では、木構造の階層間で、属性に継承関係を持たせて、各ノードが環境設定ファイルを保持しているので、環境設定ファイルを一元的に管理することや、各環境設定ファイルをグループ化して管理することが可能となる。
さらに、ノード構成は、サーバ1の管理者が自由に決定できるため、サーバ1の管理者は、環境設定ファイルの管理に、アプリケーションに依存しない一貫した管理ポリシーを適用できる。
本実施の形態の第3の効果は、グループで共通の環境設定情報7のパラメータ(設定値が同じになる設定項目等)をグループ共通の環境設定ファイルにまとめ、グループのメンバに固有な環境設定ファイルと分離して管理できることである。また、共通の環境設定ファイルにまとめることができるので、必要とする記憶容量の低減が可能なことである。
さらに、アプリケーションプログラム441が、環境設定情報7のパラメータが複数の環境設定ファイルに記述されていることを意識する必要がないことである。
その理由は、木構造を構成し、環境設定ファイルを保持する各階層の各ノードが、環境名6を構成する各文字列に対応付けられており、設定項目等の内容が共通するグループについてまとめるノード(上位ノード)が保持する環境設定ファイルと、グループのメンバとなるノード(下位ノード)との環境設定ファイル間で、環境設定情報7のパラメータの属性の継承があり、サーバ1が、受信した環境名6を基に抽出した、同一の要素名,設定項目名及び設定値等を有する各環境設定ファイルの内容を、上位ノードからの和集合により演算し、環境設定情報7を生成するためである。
本実施の形態の第4の効果は、サーバ1がアクセス可能なファイルシステム15内であれば、名前空間ディレクトリ154を自由に移動できるので、多様なディレクトリ管理ができることである。
その理由は、環境設定情報生成制御手段131によって、環境設定情報7の生成開始時に、名前空間ディレクトリ154のルートノード2000と、カレントディレクトリとの対応付けが実施されるので(ステップB2)、名前空間ディレクトリ154を移動しても、起点ディレクトリ(ルートノード)を更新すれば、クライアント4が取得する環境設定情報7に影響を与えないからである。
(第2の実施の形態)
次に、本発明の第2の実施の形態を図面を用いて詳細に説明する。
図14を参照すると、図1で示された第1の実施の形態と本実施の形態との相違点は、クライアント4の制御部43に、ユーザ名取得手段432と、グループ名取得手段433とを追加したことである。
ユーザ名取得手段432は、クライアント4の実行基盤であるOSの機能を用いて、アプリケーションプログラム441を実行するクライアント4のユーザの名前を取得する手段である。
グループ名取得手段433は、クライアント4の実行基盤であるOSの機能を用いて、アプリケーションプログラム441を実行するクライアント4のユーザが所属するグループの名前を取得する手段である。
(第2の実施の形態の動作)
本実施の形態による動作を説明する。
図1が示す第1の実施の形態では、アプリケーションプログラム441で環境名6が設定され(ステップA1)、環境設定情報問合せ手段431に入力していたが(ステップA2)、図15が示す本実施の形態では、環境設定情報問合せ手段431が環境名6を生成する(ステップH1)。
以下に、第1の実施の形態によるクライアントの動作との差分となるステップH1での処理について詳細に説明する
アプリケーションプログラム441は、自身のアプリケーション名を入力されることによって、環境設定情報問合せ手段431を呼び出すように動作を変更する。
環境設定情報問合せ手段431は、ユーザ名取得手段432を用いて、アプリケーションプログラム441を実行するクライアント4のユーザの名前を取得し、さらに、グループ名取得手段433を利用して、アプリケーションプログラム441を実行するクライアント4のユーザが所属するグループの名前を取得する。
境設定情報問合せ手段431は、アプリケーションプログラム441から入力されたアプリケーション名と、ユーザ名取得手段432によって取得したユーザ名と、グループ名取得手段433によって取得したグループ名とを、アプリケーション名、グループ名、ユーザ名の順に「.(ピリオド)」で連結して環境名6を生成し、環境設定情報7の問合せを行う。
例えば、図3を参照すると、アプリケーション名が「editor」で、「editor」を実行するユーザの名前が「admin」で、「admin」の所属するグループの名前が「host」の場合、環境名6として「editor.host.admin」を生成する。
(本実施の形態の効果)
このようにして、本実施の形態は、上記の環境設定情報問合せ手段431の内部で環境名6を自動生成する仕組みにより、アプリケーションプログラム441は、環境名すら意識することなく、アプリケーションプログラム441を実行するユーザに合わせた環境設定情報7の問合せが可能となる。
次に、本発明によるクライアントの機能構成を説明する。
図16は、本発明によるクライアントのハードウェア構成の概略を示すブロック図である。
図16を参照すると、本発明によるクライアント4は、一般的なコンピュータ装置と同様のハードウェア構成によって実現することができ、CPU401、主記憶部402、通信部403、ハードディスク装置等の補助記憶部404、キーボードやマウス等の入力部405、液晶ディスプレイ等の表示部406を備えている。
また、クライアント4では、補助記憶部404に格納されたアプリケーションプログラム441を主記憶部402にロードしてCPU401上で実行することにより、環境名6を生成する機能及び通信部を介して環境設定情報7の問合せをするための処理を行う機能を提供する。
すなわち、本発明によるクライアント4は、その動作をハードウェア的に実現することは勿論として、上記した各手段及び各部を実行するアプリケーションプログラム441を、クライアント4のコンピュータ処理装置であるCPU401(制御部43)で実行することにより、ソフトウェア的に実現することができる。このアプリケーションプログラム441は、磁気ディスク、半導体メモリ、その他の記録媒体が挙げられる補助記憶部404(記憶部44)に格納され、その補助記憶部404からCPU401にロードされ、その動作を制御することにより、上述した各機能を実現する。
また、本発明におけるサーバ1も、上記のようにして、各手段及び各部を実行するプログラムにより、環境設定情報生成制御手段131,環境名分解手段132等の各手段及び各部の機能を実現する。
すなわち、本発明による環境設定情報提供システム100は、その動作をハードウェア的に実現することは勿論として、上記した各手段及び各部を実行するプログラムを、サーバ1及びクライアント4のコンピュータ処理装置である制御部13,43で実行することにより、ソフトウェア的に実現することができる。このプログラムは、記憶部14,44に格納され、その記憶部14,44から制御部13,43にそれぞれロードされ、その動作を制御することにより、上述した各機能を実現する。
以上好ましい複数の実施の形態をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
本発明の第1の実施の形態による環境設定情報提供システムの構成を示すブロック図である。 第1の実施の形態による環境設定情報提供システムの1部の構成を示すブロック図である。 第1の実施の形態による名前空間ディレクトリを示す樹形図である。 第1の実施の形態によるDOMツリーを示す樹形図である。 第1の実施の形態による環境設定テーブル示す図である。 第1の実施の形態によるパラメータ抽出要素を示す図である。 第1の実施の形態によるクライアントの動作を示すフローチャートである。 第1の実施の形態によるサーバが備える環境設定情報生成手段の動作を示すフローチャートである。 第1の実施の形態によるサーバが備える環境名分解手段の動作を示すフローチャートである。 第1の実施の形態によるサーバが備える名前空間移動手段の動作を示すフローチャートである。 第1の実施の形態によるサーバが備える環境設定テーブル構築手段の動作を示すフローチャートである。 第1の実施の形態によるサーバが備える設定項目結合手段の動作を示すフローチャートである。 第1の実施の形態によるサーバが備える整形送信手段の動作を示すフローチャートである。 第2の実施の形態による環境設定情報提供システムが備えるクライアントの構成を示すブロック図である。 第2の実施の形態による環境設定情報提供システムが備えるクライアントの動作を示すフローチャートである。 本発明によるクライアントのハードウェア構成の概略を示すブロック図である。
符号の説明
1:サーバ
4:クライアント
5:ネットワーク
6:環境名
7:環境設定情報
11,42:受信部
12,41:送信部
13,43:制御部
131:環境設定情報生成制御手段
132:環境名分解手段
133:名前空間移動手段
134:環境設定テーブル構築手段
1341:XMLパーサ
1342:設定項目結合手段
135:整形送信手段
431:環境設定情報問合せ手段
432:ユーザ名取得手段
433:グループ名取得手段
14,44:記憶部
141:DOMツリー
142:環境設定テーブル
143:パラメータ抽出要素
1431:環境名保存領域
1432:起点ディレクトリ名
1433:環境設定ファイル名
1434:環境設定要素名
1435:設定項目属性名
1436:設定値属性名
441:アプリケーションプログラム
15:ファイルシステム
151:下位ディレクトリ取得手段
152:ディレクトリ移動手段
153:ファイル読み出し手段
154:名前空間ディレクトリ
100:環境設定情報提供システム
401:CPU
402:主記憶部
403:通信部
404:補助記憶部
405:入力部
406:表示部
2000:ルートノード
2100,2110,2120,2200,2210,2220,2211,2212,2213:ノード
2100A,2110A,2120A,2200A,2210A,2220A,2211A,2212A,2213A:環境設定ファイル

Claims (22)

  1. 端末が実行するプログラムの動作に必要な情報を格納するサーバからネットワークを介して前記情報を前記端末に提供する情報提供システムにおいて、
    前記端末が、
    前記プログラム名と1以上の環境情報とから構成された環境名を前記サーバに送信する環境名送信手段と、
    前記サーバから前記プログラムの動作に必要な環境設定情報を受信する環境設定情報受信手段と、
    前記環境設定情報を用いて前記プログラムを実行するプログラム実行手段とを備え、
    前記サーバが、
    各プログラムについて、プログラム名を上位ノードとし、当該上位ノードの下に、そのプログラムが実行される環境を表す環境情報からなる下位ノードを階層的に接続してなる名前空間ディレクトリと、各ノードに対応して、設定項目と設定パラメータの組を1以上含む環境設定情報とを記憶する記憶手段と、
    前記端末から前記環境名を受信する環境名受信手段と、
    前記環境名に含まれる前記プログラム名の前記上位ノードから開始し、前記1以上の環境情報を含むノードを経路とするように前記名前空間ディレクトリを探索し、前記探索の過程において、経路上のノードに対応する前記環境設定情報を順次抽出して環境設定テーブルに登録していく環境設定情報抽出手段と、
    前記環境設定情報抽出手段による前記経路の探索が終了すると、前記環境設定テーブルに登録された前記環境設定情報を前記端末に送信する環境設定情報送信手段とを備え、
    前記下位ノードに対応する前記環境設定情報は、その上位ノードに対応する前記環境設定情報のうち少なくとも設定項目を継承すると共に、当該上位ノードに対応する前記環境設定情報に含まれない設定項目及びその設定値を含み得り、
    前記環境設定情報抽出手段は、前記登録の過程において、上位のノードと下位のノードに対応する前記環境設定情報のうち、前記設定項目が重複し、かつ、前記設定値が異なる場合は、前記下位のノードの前記設定値により前記上位のノードの前記設定値を上書きする
    ことを特徴とする情報提供システム
  2. 前記環境情報が、前記プログラムを実行するユーザを示すユーザ名であることを特徴とする請求項1に記載の情報提供システム。
  3. 前記環境情報が、前記プログラムを実行するユーザが属するグループを示すグループ名であることを特徴とする請求項1に記載の情報提供システム。
  4. 前記環境情報が、前記プログラムを実行する環境に固有の環境情報を示す環境情報名であることを特徴とする請求項1に記載の情報提供システム。
  5. 前記記憶手段は、前記環境設定情報をXML文書により記憶し、
    前記環境設定情報抽出手段は、前記探索の過程において、Xpath式によって要素の選択が可能なXMLパーサを用いて、経路上のノードに対応する前記環境設定情報を順次抽出して環境設定テーブルに登録していくことを特徴とする請求項1から請求項4の何れか1項に記載の情報提供システム
  6. 前記環境情報が、前記端末が自端末の有するオペレーティングシステムの機能を用いて取得した当該自端末のユーザを識別するユーザ識別情報をであることを特徴とする請求項1に記載の情報提供システム
  7. 前記環境情報が、前記端末が自端末の有するオペレーティングシステムの機能を用いて取得した当該自端末のユーザが属するグループを識別するグループ識別情報であることを特徴とする請求項1に記載の情報提供システム
  8. 端末が実行するプログラムの動作に必要な情報を格納し、ネットワークを介して前記情報を前記端末に提供するサーバによる情報提供方法において、
    前記端末から前記プログラム名と1以上の環境情報とから構成された環境名を受信する環境名受信ステップと、
    前記環境名に含まれる前記プログラム名の前記上位ノードから開始し、前記1以上の環境情報を含むノードを経路とするように前記名前空間ディレクトリを探索し、前記探索の過程において、経路上のノードに対応する環境設定情報を順次抽出して環境設定テーブルに登録していく環境設定情報抽出ステップと、
    前記環境設定情報抽出ステップによる前記経路の探索が終了すると、前記環境設定テーブルに登録された前記環境設定情報を前記端末に送信する環境設定情報送信ステップとを有し、
    前記環境設定情報は、各ノードに対応して、設定項目と設定パラメータの組を1以上含み、
    前記下位ノードに対応する前記環境設定情報は、その上位ノードに対応する前記環境設定情報のうち少なくとも設定項目を継承すると共に、当該上位ノードに対応する前記環境設定情報に含まれない設定項目及びその設定値を含み得り、
    前記環境設定情報抽出ステップは、前記登録の過程において、上位のノードと下位のノードに対応する前記環境設定情報のうち、前記設定項目が重複し、かつ、前記設定値が異なる場合は、前記下位のノードの前記設定値により前記上位のノードの前記設定値を上書きする
    ことを特徴とする情報提供方法
  9. 前記環境情報が、前記プログラムを実行するユーザを示すユーザ名であることを特徴とする請求項8に記載の情報提供方法
  10. 前記環境情報が、前記プログラムを実行するユーザが属するグループを示すグループ名であることを特徴とする請求項8に記載の情報提供方法
  11. 前記環境情報が、前記プログラムを実行する環境に固有の環境情報を示す環境情報名であることを特徴とする請求項8に記載の情報提供方法
  12. 前記環境設定情報はXML文書により記憶され、
    前記環境設定情報抽出ステップは、前記探索の過程において、Xpath式によって要素の選択が可能なXMLパーサを用いて、経路上のノードに対応する前記環境設定情報を順次抽出して環境設定テーブルに登録していくことを特徴とする請求項8から請求項11の何れか1項に記載の情報提供方法
  13. 端末が実行するプログラムの動作に必要な情報を格納し、ネットワークを介して前記情報を前記端末に提供するサーバにおいて、
    各プログラムについて、プログラム名を上位ノードとし、当該上位ノードの下に、そのプログラムが実行される環境を表す環境情報からなる下位ノードを階層的に接続してなる名前空間ディレクトリと、各ノードに対応して、設定項目と設定パラメータの組を1以上含む環境設定情報とを記憶する記憶手段と、
    前記端末から前記プログラム名と1以上の環境情報とから構成された環境名を受信する環境名受信手段と、
    前記環境名に含まれる前記プログラム名の前記上位ノードから開始し、前記1以上の環境情報を含むノードを経路とするように前記名前空間ディレクトリを探索し、前記探索の過程において、経路上のノードに対応する環境設定情報を順次抽出して環境設定テーブルに登録していく環境設定情報抽出手段と、
    前記環境設定情報抽出手段による前記経路の探索が終了すると、前記環境設定テーブルに登録された前記環境設定情報を前記端末に送信する環境設定情報送信手段とを備え、
    前記下位ノードに対応する前記環境設定情報は、その上位ノードに対応する前記環境設定情報のうち少なくとも設定項目を継承すると共に、当該上位ノードに対応する前記環境設定情報に含まれない設定項目及びその設定値を含み得り、
    前記環境設定情報抽出手段は、前記登録の過程において、上位のノードと下位のノードに対応する前記環境設定情報のうち、前記設定項目が重複し、かつ、前記設定値が異なる場合は、前記下位のノードの前記設定値により前記上位のノードの前記設定値を上書きする
    ことを特徴とするサーバ
  14. 前記環境情報が、前記プログラムを実行するユーザを示すユーザ名であることを特徴とする請求項13に記載のサーバ
  15. 前記環境情報が、前記プログラムを実行するユーザが属するグループを示すグループ名であることを特徴とする請求項13に記載のサーバ
  16. 前記環境情報が、前記プログラムを実行する環境に固有の環境情報を示す環境情報名であることを特徴とする請求項13に記載のサーバ
  17. 前記記憶手段は、前記環境設定情報をXML文書により記憶し、
    前記環境設定情報抽出手段は、前記探索の過程において、Xpath式によって要素の選択が可能なXMLパーサを用いて、経路上のノードに対応する前記環境設定情報を順次抽出して環境設定テーブルに登録していくことを特徴とする請求項13から請求項16の何れか1項に記載のサーバ
  18. 端末が実行するプログラムの動作に必要な情報を格納し、ネットワークを介して前記情報を前記端末に提供するサーバ上で実行される情報提供プログラムにおいて、
    前記サーバであるコンピュータ装置に、
    前記端末から前記プログラム名と1以上の環境情報とから構成された環境名を受信する環境名受信処理と、
    前記環境名に含まれる前記プログラム名の前記上位ノードから開始し、前記1以上の環境情報を含むノードを経路とするように前記名前空間ディレクトリを探索し、前記探索の過程において、経路上のノードに対応する環境設定情報を順次抽出して環境設定テーブルに登録していく環境設定情報抽出処理と、
    前記環境設定情報抽出処理による前記経路の探索が終了すると、前記環境設定テーブルに登録された前記環境設定情報を前記端末に送信する環境設定情報送信処理とを実行させ、
    前記環境設定情報は、各ノードに対応して、設定項目と設定パラメータの組を1以上含み、
    前記下位ノードに対応する前記環境設定情報は、その上位ノードに対応する前記環境設定情報のうち少なくとも設定項目を継承すると共に、当該上位ノードに対応する前記環境設定情報に含まれない設定項目及びその設定値を含み得り、
    前記環境設定情報抽出処理は、前記登録の過程において、上位のノードと下位のノードに対応する前記環境設定情報のうち、前記設定項目が重複し、かつ、前記設定値が異なる場合は、前記下位のノードの前記設定値により前記上位のノードの前記設定値を上書きする
    ことを特徴とする情報提供プログラム
  19. 前記環境情報が、前記プログラムを実行するユーザを示すユーザ名であることを特徴とする請求項18に記載の情報提供プログラム
  20. 前記環境情報が、前記プログラムを実行するユーザが属するグループを示すグループ名であることを特徴とする請求項18に記載の情報提供プログラム
  21. 前記環境情報が、前記プログラムを実行する環境に固有の環境情報を示す環境情報名であることを特徴とする請求項18に記載の情報提供プログラム
  22. 前記環境設定情報はXML文書により記憶され、
    前記環境設定情報抽出処理は、前記探索の過程において、Xpath式によって要素の選択が可能なXMLパーサを用いて、経路上のノードに対応する前記環境設定情報を順次抽出して環境設定テーブルに登録していくことを特徴とする請求項8から請求項11の何れか1項に記載の情報提供プログラム
JP2005105047A 2005-03-31 2005-03-31 情報提供システム、情報提供方法、サーバ及び情報提供プログラム Expired - Fee Related JP4529766B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005105047A JP4529766B2 (ja) 2005-03-31 2005-03-31 情報提供システム、情報提供方法、サーバ及び情報提供プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005105047A JP4529766B2 (ja) 2005-03-31 2005-03-31 情報提供システム、情報提供方法、サーバ及び情報提供プログラム

Publications (2)

Publication Number Publication Date
JP2006285666A JP2006285666A (ja) 2006-10-19
JP4529766B2 true JP4529766B2 (ja) 2010-08-25

Family

ID=37407524

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005105047A Expired - Fee Related JP4529766B2 (ja) 2005-03-31 2005-03-31 情報提供システム、情報提供方法、サーバ及び情報提供プログラム

Country Status (1)

Country Link
JP (1) JP4529766B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5446625B2 (ja) 2009-09-07 2014-03-19 株式会社リコー プリンタドライバ、情報処理装置、およびプリンタドライバを記録したコンピュータ読み取り可能な記録媒体
US10620968B2 (en) 2015-05-25 2020-04-14 Nec Corporation Parameter determination device, parameter determination method, and medium
JP6908828B2 (ja) * 2017-04-17 2021-07-28 キヤノンマーケティングジャパン株式会社 プログラム生成装置、制御方法、およびコンピュータプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000250872A (ja) * 1999-03-02 2000-09-14 Mitsubishi Electric Corp 業務処理システムの統合管理方式
JP2002259541A (ja) * 2001-02-28 2002-09-13 Nippon Telegr & Teleph Corp <Ntt> 環境情報配信方法、システム、環境情報提供者端末、およびサイト提供者端末

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000250872A (ja) * 1999-03-02 2000-09-14 Mitsubishi Electric Corp 業務処理システムの統合管理方式
JP2002259541A (ja) * 2001-02-28 2002-09-13 Nippon Telegr & Teleph Corp <Ntt> 環境情報配信方法、システム、環境情報提供者端末、およびサイト提供者端末

Also Published As

Publication number Publication date
JP2006285666A (ja) 2006-10-19

Similar Documents

Publication Publication Date Title
JP4340566B2 (ja) Webページ生成装置、組み込み装置、Webページ生成の制御方法、Webページ生成プログラム及び記録媒体
US10437584B2 (en) Web client command infrastructure integration into a rich client application
US20040160464A1 (en) System and method for providing a graphical user interface and alternate mappings of management information base objects
JP2005182835A (ja) 異種のデータソースのためのデータサーバを生成する方法
JP5448542B2 (ja) 情報処理装置、制御方法、及びプログラム
WO2013038489A1 (ja) 計算機システム、クライアント計算機の管理方法及び記憶媒体
WO2013175560A1 (ja) 情報通信システム及び情報変換方法
US20030046058A1 (en) Translation text management system
JP2010016778A (ja) 画像形成装置、情報処理方法、及び、画像形成システム
CN108628634A (zh) 报文配置方法、装置、计算机设备以及存储介质
JP2001325098A (ja) アプリケーションプログラムの作成方法、データベース操作方法、項目オブジェクト管理方法、モジュール動作制御方法ならびにデータベース操作方法、項目オブジェクト管理方法およびモジュール動作制御方法を実現するためのプログラムを記録したコンピュータ可読な記録媒体
CN111625273A (zh) 半导体设备的配置文件修改方法及装置
CN107977344A (zh) 数据存储方法、获取方法及服务器
JP2002049637A (ja) データベース管理方法及び装置並びに記録媒体
JP4529766B2 (ja) 情報提供システム、情報提供方法、サーバ及び情報提供プログラム
US7120663B2 (en) Method and apparatus for updating XML data
JPH11288412A (ja) 文書作成方法及びシステム及び文書作成プログラムを記録したコンピュータ読み取り可能な記録媒体
US6510423B1 (en) Method and device for object control with a plurality of operation-target flags
CN114047939A (zh) 一种数据处理方法及中间件
JP2010128776A (ja) 携帯端末自動メンテナンス装置および携帯端末自動メンテナンス方法
JP2003242127A (ja) 業務統合システム
JP4717592B2 (ja) 文書管理システム、その文書管理クライアントの制御方法及びプログラム
JP6677809B2 (ja) アダプタ生成装置及び方法
JP6331307B2 (ja) 情報処理装置、情報処理装置の制御方法、およびプログラム
JP5404593B2 (ja) アドレス帳サーバ及びこれを備えたデータ処理システム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090414

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090615

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090708

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090831

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090924

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091221

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20100125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100301

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100427

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100518

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100531

R150 Certificate of patent or registration of utility model

Ref document number: 4529766

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130618

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees