JP5320637B2 - Data search system, system, program, and data search method - Google Patents

Data search system, system, program, and data search method Download PDF

Info

Publication number
JP5320637B2
JP5320637B2 JP2008092631A JP2008092631A JP5320637B2 JP 5320637 B2 JP5320637 B2 JP 5320637B2 JP 2008092631 A JP2008092631 A JP 2008092631A JP 2008092631 A JP2008092631 A JP 2008092631A JP 5320637 B2 JP5320637 B2 JP 5320637B2
Authority
JP
Japan
Prior art keywords
data
unit
search
information
acquired
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.)
Active
Application number
JP2008092631A
Other languages
Japanese (ja)
Other versions
JP2009245282A (en
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.)
JSOL Corp
Original Assignee
JSOL 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 JSOL Corp filed Critical JSOL Corp
Priority to JP2008092631A priority Critical patent/JP5320637B2/en
Publication of JP2009245282A publication Critical patent/JP2009245282A/en
Application granted granted Critical
Publication of JP5320637B2 publication Critical patent/JP5320637B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To simplify system configurations, and to increase the processing efficiency of data retrieval processing in a data retrieval system. <P>SOLUTION: This data retrieval system is configured to retrieve data to be used for a service from a database, and provided with: a service identification information acquisition part for acquiring service identification information for identifying a service transmitted from the request source of data; a configuration information specification part for specifying the configuration information of a retrieval inquiry sentence associated with the service identification information; a retrieval inquiry sentence generation part for generating a retrieval inquiry sentence by using the predetermined configuration information; a data acquisition part for acquiring data on the basis of the generated retrieval inquiry sentence; and a data transmission part for transmitting the acquired data to the request source. <P>COPYRIGHT: (C)2010,JPO&amp;INPIT

Description

本発明は、データ検索システム、データ検索方法、およびプログラムに関する。本発明は、特に、サービスで利用するデータを検索するデータ検索システム、データ検索方法、およびプログラムに関する。   The present invention relates to a data search system, a data search method, and a program. The present invention particularly relates to a data search system, a data search method, and a program for searching for data used in a service.

システム内で分散する複数のデータベースを仮想的に統合する技術が考案されている(たとえば、特許文献1および特許文献2参照。)。このような技術を利用することで、データ要求元のシステムは、データの格納先を意識することなく、データベースに格納されているデータを取得することができるものとされている。
特開2005−208757号公報 特開2007−257083号公報
A technology for virtually integrating a plurality of databases distributed in the system has been devised (see, for example, Patent Document 1 and Patent Document 2). By using such a technique, the data requesting system can acquire the data stored in the database without being aware of the data storage destination.
JP 2005-208757 A JP 2007-257083 A

しかしながら、上記技術では、データベース接続を前提としているので、データベース接続インタフェースを有していないシステム、データベース以外の方式でデータを永続化しているシステムが有するデータの統合は困難となる。   However, since the above technique is premised on database connection, it is difficult to integrate data included in a system that does not have a database connection interface and a system that persists data using a method other than a database.

また、上記技術では、データ要求元で直接検索問合せ文を生成・発行しているので、データベースに負荷がかかるような問合せ文を防ぐことができない。この場合、この問合せに対するレスポンスだけでなく、このデータベースを対象とした他の問合せに対するレスポンスも低下する可能性が生じる。   Further, in the above technique, since the query request statement is directly generated and issued by the data request source, it is not possible to prevent a query statement that puts a load on the database. In this case, there is a possibility that not only the response to this query but also the response to other queries targeting this database will be reduced.

また、問合せの結果に対してデータベース統合参照装置で制限等を実施していないので、データ要求元が不要に大量のデータを取得したり、特定のデータ要求元にしか公開すべきでない機密性の高いデータを他のシステムが取得できてしまうことになる。   In addition, since the database integrated reference device does not restrict the query results, the data requester can acquire a large amount of data unnecessarily, or it must be disclosed only to a specific data requester. Other systems can acquire high data.

上記課題を解決するために、本発明の第1の形態においては、サービスで利用するデータをデータベースから検索するデータ検索システムであって、データの要求元から送信された、サービスを識別するためのサービス識別情報を取得するサービス識別情報取得部と、サービス識別情報に対応付けられている、検索問い合わせ文の構成情報を特定する構成情報特定部と、特定された構成情報を用いて、検索問い合わせ文を生成する検索問い合わせ文生成部と、生成した検索問い合わせ文により、データを取得するデータ取得部と、取得したデータを、要求元へ送信するデータ送信部とを備える。   In order to solve the above-described problem, in the first embodiment of the present invention, a data search system for searching data used in a service from a database, for identifying the service transmitted from the data request source. A service inquiry information acquisition unit that acquires service identification information, a structure information specifying unit that specifies configuration information of a search query sentence associated with the service identification information, and a search inquiry sentence using the specified configuration information A search query statement generation unit that generates the data, a data acquisition unit that acquires data using the generated search query statement, and a data transmission unit that transmits the acquired data to the request source.

なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションもまた、発明となりうる。   The above summary of the invention does not enumerate all the necessary features of the present invention, and sub-combinations of these feature groups can also be the invention.

以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。   Hereinafter, the present invention will be described through embodiments of the invention, but the following embodiments do not limit the invention according to the claims. In addition, not all the combinations of features described in the embodiments are essential for the solving means of the invention.

図1は、実施形態に係る行政システム10の一例を示す。行政システム10は、データ検索システム100を備える。また、行政システム10は、サービスで利用するデータのデータ要求元の一例としての受給台帳システム110を備える。また、行政システム10は、サービスで利用するデータの取得先の一例としての高齢者支援システム121、生活保護システム122、および共通データベース123を備える。   FIG. 1 shows an example of an administrative system 10 according to the embodiment. The administrative system 10 includes a data search system 100. The administrative system 10 also includes a receipt ledger system 110 as an example of a data request source of data used in the service. In addition, the administrative system 10 includes an elderly support system 121, a welfare system 122, and a common database 123 as an example of an acquisition destination of data used in the service.

高齢者支援システム121は、高齢者支援サービスを提供するシステムであって、高齢者支援サービスのデータを保持する。生活保護システム122は、生活保護サービスを提供するシステムであって、生活保護サービスのデータを保持する。共通データベース123は、複数のシステムが共通して利用するデータを格納する。共通データベース123は、住民情報サービスのデータおよび住民所得情報サービスのデータを格納する。   The elderly person support system 121 is a system that provides elderly person support services, and holds data of elderly person support services. The welfare system 122 is a system that provides a welfare service, and holds data on the welfare service. The common database 123 stores data shared by a plurality of systems. The common database 123 stores resident information service data and resident income information service data.

データ検索システム100は、受給台帳システム110からの要求に応じて、利用者に提供するサービスのデータを、高齢者支援システム121、生活保護システム122、および共通データベース123の少なくともいずれか一つから取得する。そして、データ検索システム100は、取得したデータを、受給台帳システム110へ送信する。   In response to a request from the receipt ledger system 110, the data search system 100 acquires service data to be provided to the user from at least one of the elderly support system 121, the welfare system 122, and the common database 123. To do. Then, the data search system 100 transmits the acquired data to the receipt ledger system 110.

データ検索システム100は、高齢者支援情報検索サービス機能、生活保護情報検索サービス機能、住民情報検索サービス機能、および住民所得情報検索サービス機能を有する。高齢者支援情報検索サービス機能は、高齢者支援システム121から、高齢者支援サービスのデータを取得する。生活保護情報検索サービス機能は、生活保護システム122から、生活保護サービスのデータを取得する。住民情報検索サービス機能は、共通データベース123から、住民情報サービスのデータを取得する。住民所得情報検索サービス機能は、共通データベース123から、住民所得情報サービスのデータを取得する。   The data search system 100 has an elderly support information search service function, a welfare information search service function, a resident information search service function, and a resident income information search service function. The elderly person support information retrieval service function acquires elderly person support service data from the elderly person support system 121. The life protection information search service function acquires data of a life protection service from the life protection system 122. The resident information search service function acquires resident information service data from the common database 123. The resident income information search service function acquires data of the resident income information service from the common database 123.

受給台帳システム110は、サービスの利用者に提供するデータを、データ検索システム100に対して要求する。そして、受給台帳システム110は、要求に応じたデータをデータ検索システム100から取得する。さらに、受給台帳システム110は、取得したデータを、利用者に提供する。   The receipt ledger system 110 requests the data search system 100 for data to be provided to the service user. Then, the receipt ledger system 110 acquires data corresponding to the request from the data search system 100. Furthermore, the receipt ledger system 110 provides the acquired data to the user.

たとえば、受給台帳システム110が備える端末装置から高齢者支援サービスが選択された場合、受給台帳システム110は、高齢者支援サービスのデータを、データ検索システム100に対して要求する。これに応じて、データ検索システム100は、高齢者支援システム121から、高齢者支援サービスのデータを取得する。そして、受給台帳システム110は、高齢者支援サービスのデータを、データ検索システム100から取得する。さらに、受給台帳システム110は、取得した高齢者支援サービスのデータを、端末装置の画面上に表示する。   For example, when the elderly support service is selected from the terminal device included in the receipt ledger system 110, the receipt ledger system 110 requests the data search system 100 for data of the elderly support service. In response to this, the data search system 100 acquires the data for the elderly support service from the elderly support system 121. Then, the receipt ledger system 110 acquires the data for the elderly support service from the data search system 100. Furthermore, the receipt ledger system 110 displays the acquired elderly support service data on the screen of the terminal device.

受給台帳システム110は、高齢者支援システム121、生活保護システム122、および共通データベース123が保持するそれぞれのデータを、データ検索システム100に要求することで、データ検索システム100から取得できる。このため、受給台帳システム110は、高齢者支援システム121、生活保護システム122、および共通データベース123のそれぞれに対する通信インタフェースを設ける必要が無く、データ検索システム100に対する通信インタフェースだけを設ければよい。   The receipt ledger system 110 can acquire the data held by the elderly support system 121, the welfare system 122, and the common database 123 from the data search system 100 by requesting the data search system 100. For this reason, the receiving ledger system 110 does not need to provide a communication interface for each of the elderly support system 121, the welfare protection system 122, and the common database 123, and only needs to provide a communication interface for the data search system 100.

特に、受給台帳システム110は、高齢者支援システム121、生活保護システム122、および共通データベース123のそれぞれに対する通信接続方式が異なる場合がある。たとえば、高齢者支援システム121との通信接続方式にWebサービス接続が用いられ、生活保護システム122との通信接続方式にDB2(登録商標)用のデータベース接続が用いられ、共通データベース123との通信接続にOracle(登録商標)用のデータベース接続が用いられているとする。このような場合であっても、受給台帳システム110は、データ検索システム100との通信接続方式の通信インタフェースだけを設ければよい。   In particular, the receipt ledger system 110 may have different communication connection methods for the elderly support system 121, the welfare system 122, and the common database 123, respectively. For example, a Web service connection is used as a communication connection method with the elderly person support system 121, a DB2 (registered trademark) database connection is used as a communication connection method with the life protection system 122, and a communication connection with the common database 123 is established. Assume that a database connection for Oracle (registered trademark) is used. Even in such a case, the receiving ledger system 110 only needs to provide a communication interface of a communication connection method with the data search system 100.

行政システム10が備えるいずれかのシステムを変更または削除する場合は、変更または削除するシステムとデータ検索システム100との通信インタフェースだけを変更または削除すればよい。また、行政システム10に対してシステムを追加する場合、追加するシステムは、データ検索システム100に対する通信インタフェースだけを設ければよい。これにより、追加するシステムは、高齢者支援システム121、生活保護システム122、または共通データベース123が保持するデータを、データ検索システム100に要求することで、データ検索システム100から取得できる。   When any system included in the administrative system 10 is changed or deleted, only the communication interface between the system to be changed or deleted and the data search system 100 may be changed or deleted. Further, when a system is added to the administrative system 10, the system to be added only needs to provide a communication interface for the data search system 100. Thus, the system to be added can be acquired from the data search system 100 by requesting the data search system 100 for data held by the elderly support system 121, the welfare system 122, or the common database 123.

このように、本実施形態の行政システム10によれば、既存のデータ要求元システムおよびデータ提供元システムに影響を及ぼすことなく、システムの追加・変更・削除をおこなうことができるので、システムの構築および管理にかかるコストを削減できる。また、行政システム10が備えるそれぞれのシステムは、複数種類の通信ポートを開放する必要がないので、行政システム10が備えるそれぞれのシステムにおけるセキュリティ効果を向上できる。   As described above, according to the administrative system 10 of the present embodiment, the system can be added / changed / deleted without affecting the existing data requesting system and the data providing system. And management costs can be reduced. In addition, since each system included in the administrative system 10 does not need to open a plurality of types of communication ports, the security effect of each system included in the administrative system 10 can be improved.

図2は、実施形態に係るデータ検索システム100の機能構成例を示す。データ検索システム100は、サービスインタフェース部210、権限判定処理部220、検索処理部230、フィルタ処理部240、および格納部250を備える。   FIG. 2 shows a functional configuration example of the data search system 100 according to the embodiment. The data search system 100 includes a service interface unit 210, an authority determination processing unit 220, a search processing unit 230, a filter processing unit 240, and a storage unit 250.

格納部250は、サービスインタフェース部210、権限判定処理部220、検索処理部230、またはフィルタ処理部240によって参照される各種定義ファイルを予め格納する。たとえば、格納部250は、複数のサービス識別情報のそれぞれに対する権限判定ルールの対応付けを予め定義した権限判定ルール定義ファイルを格納する。また、格納部250は、複数のサービス識別情報のそれぞれに対するデータ検索処理の対応付けを予め定義したサービス定義ファイルを格納する。また、格納部250は、複数のフィルタリング条件を定義したフィルタリング条件定義ファイルを予め格納する。   The storage unit 250 stores in advance various definition files referenced by the service interface unit 210, the authority determination processing unit 220, the search processing unit 230, or the filter processing unit 240. For example, the storage unit 250 stores an authority determination rule definition file in which an association of authority determination rules with each of a plurality of service identification information is defined in advance. In addition, the storage unit 250 stores a service definition file in which association of data search processing with each of a plurality of service identification information is defined in advance. The storage unit 250 stores in advance a filtering condition definition file that defines a plurality of filtering conditions.

サービスインタフェース部210は、要求電文を受給台帳システム110から取得する。要求電文には、サービス識別情報、ユーザ情報、検索パラメータなどが示されている。サービスインタフェース部210は、取得したサービス識別情報、ユーザ情報、検索パラメータなどを示すValueObjectを生成する。そして、サービスインタフェース部210は、生成したValueObjectを権限判定処理部220に送信する。これにより、サービスインタフェース部210は、権限判定処理部220に対して、権限判定処理部220による権限判定処理および検索処理部230によるデータ検索処理を要求する。   The service interface unit 210 acquires a request message from the receipt ledger system 110. The request message includes service identification information, user information, search parameters, and the like. The service interface unit 210 generates ValueObject indicating the acquired service identification information, user information, search parameters, and the like. Then, the service interface unit 210 transmits the generated ValueObject to the authority determination processing unit 220. As a result, the service interface unit 210 requests the authority determination processing unit 220 for authority determination processing by the authority determination processing unit 220 and data search processing by the search processing unit 230.

権限判定処理部220は、サービスインタフェース部210から送信されたValueObjectを取得する。権限判定処理部220は、取得したValueObjectを参照することにより、サービスおよびユーザを特定する。権限判定処理部220は、格納部250に格納されている権限判定ルール定義ファイルを参照することにより、特定したサービスに対応付けられている権限判定ルールを特定する。そして、権限判定処理部220は、特定した権限判定ルールを用いて、特定したユーザの権限を判定する。   The authority determination processing unit 220 acquires the value object transmitted from the service interface unit 210. The authority determination processing unit 220 identifies a service and a user by referring to the acquired ValueObject. The authority determination processing unit 220 identifies the authority determination rule associated with the identified service by referring to the authority determination rule definition file stored in the storage unit 250. And the authority determination process part 220 determines the authority of the specified user using the specified authority determination rule.

権限判定処理部220は、取得したValueObjectを参照することにより、ユーザが属する部署名を特定してもよい。そして、権限判定処理部220は、特定した部署名で、ユーザの権限を判定してもよい。また、権限判定処理部220は、取得したValueObjectを参照することにより、ユーザの職位名を特定してもよい。そして、権限判定処理部220は、特定した職位名で、ユーザの権限を判定してもよい。   The authority determination processing unit 220 may specify the department name to which the user belongs by referring to the acquired ValueObject. Then, the authority determination processing unit 220 may determine the authority of the user with the specified department name. Further, the authority determination processing unit 220 may specify the title of the user by referring to the acquired ValueObject. Then, the authority determination processing unit 220 may determine the authority of the user with the specified position name.

権限判定処理によって特定したサービスに対する特定したユーザの権限が有ると判定された場合、権限判定処理部220は、サービス識別情報および検索パラメータが示されたValueObjectを検索処理部230に引き渡す。これにより、権限判定処理部220は、検索処理部230に対してデータ検索処理を要求する。一方、権限判定処理によって特定したサービスに対する特定したユーザの権限が無いと判定した場合、権限判定処理部220は、検索処理部230に対してデータ検索処理を要求せずに、権限判定処理の結果を示すValueObjectを、サービスインタフェース部210へ送信する。   When it is determined that the specified user has authority for the service specified by the authority determination process, the authority determination processing unit 220 hands over the ValueObject indicating the service identification information and the search parameter to the search processing unit 230. As a result, the authority determination processing unit 220 requests the search processing unit 230 to perform a data search process. On the other hand, when it is determined that there is no authority of the specified user for the service specified by the authority determination process, the authority determination processing unit 220 does not request the data search process to the search processing unit 230, and the result of the authority determination process Is sent to the service interface unit 210.

検索処理部230は、権限判定処理部220から送信されたValueObjectを取得する。検索処理部230は、取得したValueObjectを参照することにより、サービスおよび検索パラメータを特定する。また、検索処理部230は、格納部250に格納されているサービス定義ファイルを参照することにより、特定したサービスに対応付けられているデータ検索処理を特定する。   The search processing unit 230 acquires the ValueObject transmitted from the authority determination processing unit 220. The search processing unit 230 specifies a service and a search parameter by referring to the acquired ValueObject. In addition, the search processing unit 230 specifies a data search process associated with the specified service by referring to the service definition file stored in the storage unit 250.

そして、検索処理部230は、特定したデータ検索処理により、特定したサービスに応じたデータ検索処理をおこなう。たとえば、検索処理部230は、特定したサービスに応じた検索問い合わせ文を、特定したサービスに応じたあて先へ送信する。   And the search process part 230 performs the data search process according to the specified service by the specified data search process. For example, the search processing unit 230 transmits a search inquiry sentence corresponding to the specified service to a destination corresponding to the specified service.

これにより、検索処理部230は、特定したサービスに応じた検索結果データを取得する。たとえば、検索処理部230は、特定したサービスに応じた検索結果データを、高齢者支援システム121、生活保護システム122、または共通データベース123から取得する。検索処理部230は、取得した検索結果データを示すValueObjectを生成する。検索処理部230は、生成したValueObjectを権限判定処理部220へ送信する。   Thereby, the search processing unit 230 acquires search result data corresponding to the specified service. For example, the search processing unit 230 acquires search result data corresponding to the specified service from the elderly support system 121, the welfare system 122, or the common database 123. The search processing unit 230 generates ValueObject indicating the acquired search result data. The search processing unit 230 transmits the generated ValueObject to the authority determination processing unit 220.

フィルタ処理部240は、検索処理部230が取得した検索結果データに対して、データ項目単位でのフィルタリング処理をおこなう。たとえば、検索処理部230は、サービス識別情報、ユーザ情報、および検索結果データが示されたValueObjectをフィルタ処理部240へ送信する。   The filter processing unit 240 performs a filtering process in units of data items on the search result data acquired by the search processing unit 230. For example, the search processing unit 230 transmits ValueObject indicating service identification information, user information, and search result data to the filter processing unit 240.

フィルタ処理部240は、検索処理部230から送信されたValueObjectを取得する。フィルタ処理部240は、取得したValueObjectを参照することにより、サービスおよびユーザを特定する。また、フィルタ処理部240は、格納部250に格納されているサービス定義ファイルを参照することにより、特定したサービスに対応付けられているフィルタリング条件を特定する。   The filter processing unit 240 acquires the ValueObject transmitted from the search processing unit 230. The filter processing unit 240 identifies a service and a user by referring to the acquired ValueObject. Further, the filter processing unit 240 identifies the filtering condition associated with the identified service by referring to the service definition file stored in the storage unit 250.

フィルタ処理部240は、格納部250に格納されているフィルタリング条件定義ファイルを参照することにより、特定したフィルタリング条件から、権限判定ルールを、取得した検索結果データのデータ項目ごとに特定する。そして、フィルタ処理部240は、取得した検索結果データのデータ項目ごとに、特定した権限判定ルールを用いて、特定したユーザの権限を判定する。   By referring to the filtering condition definition file stored in the storage unit 250, the filter processing unit 240 specifies an authority determination rule for each data item of the acquired search result data from the specified filtering conditions. And the filter process part 240 determines the authority of the specified user using the specified authority determination rule for every data item of the acquired search result data.

フィルタ処理部240は、ユーザが属する部署名を特定してもよい。そして、フィルタ処理部240は、特定した部署名で、取得した検索結果データのデータ項目ごとのユーザの権限を判定してもよい。また、フィルタ処理部240は、ユーザの職位名を特定してもよい。そして、フィルタ処理部240は、特定した職位名で、取得した検索結果データのデータ項目ごとのユーザの権限を判定してもよい。   The filter processing unit 240 may specify a department name to which the user belongs. Then, the filter processing unit 240 may determine the authority of the user for each data item of the acquired search result data with the specified department name. Further, the filter processing unit 240 may specify the job title name of the user. And the filter process part 240 may determine the authority of the user for every data item of the acquired search result data with the specified position name.

フィルタ処理部240は、取得した検索結果データから、権限判定処理によってユーザの権限が有ると判定されたデータ項目のデータを抽出する。そして、フィルタ処理部240は、抽出したデータ、すなわちフィルタリング処理後の検索結果データが示されたValueObjectを検索処理部230に送信する。検索処理部230は、フィルタリング処理後の検索結果データが示されたValueObjectを取得する。なお、フィルタ処理部240は、フィルタリング処理後の検索結果データが示されたValueObjectを、権限判定処理部220またはサービスインタフェース部210へ送信してもよい。   The filter processing unit 240 extracts, from the acquired search result data, data of data items determined to have the user authority by the authority determination process. Then, the filter processing unit 240 transmits the extracted data, that is, the ValueObject indicating the search result data after the filtering process, to the search processing unit 230. The search processing unit 230 acquires ValueObject in which search result data after filtering processing is indicated. Note that the filter processing unit 240 may transmit the ValueObject indicating the search result data after the filtering process to the authority determination processing unit 220 or the service interface unit 210.

権限判定処理部220は、検索結果データが示されたValueObjectを検索処理部230から取得する。そして、権限判定処理部220は、取得したValueObjectを、サービスインタフェース部210へ送信する。   The authority determination processing unit 220 acquires the value object indicating the search result data from the search processing unit 230. Then, the authority determination processing unit 220 transmits the acquired ValueObject to the service interface unit 210.

サービスインタフェース部210は、検索結果データが示されたValueObjectを権限判定処理部220から取得する。そして、サービスインタフェース部210は、検索結果データが示された応答電文を生成する。さらに、サービスインタフェース部210は、生成した応答電文を、受給台帳システム110へ送信する。   The service interface unit 210 acquires the value object in which the search result data is indicated from the authority determination processing unit 220. Then, the service interface unit 210 generates a response message indicating the search result data. Further, the service interface unit 210 transmits the generated response message to the receipt ledger system 110.

図3は、検索処理部230の機能構成例を示す。検索処理部230は、検索部310を有する。検索処理部230は、事前固有処理実行部322、カラム値生成部324、および事後固有処理実行部328をさらに有する。   FIG. 3 shows a functional configuration example of the search processing unit 230. The search processing unit 230 includes a search unit 310. The search processing unit 230 further includes a pre-unique process execution unit 322, a column value generation unit 324, and a post-unique process execution unit 328.

検索部310は、権限判定処理部220から送信されたValueObjectを取得する。検索部310は、取得したValueObjectを参照することにより、サービスおよび検索パラメータを特定する。また、検索部310は、格納部250に格納されているサービス定義ファイルを参照することにより、特定したサービスに対応付けられているデータ検索処理を特定する。   The search unit 310 acquires the value object transmitted from the authority determination processing unit 220. The search unit 310 identifies a service and a search parameter by referring to the acquired ValueObject. In addition, the search unit 310 specifies a data search process associated with the specified service by referring to the service definition file stored in the storage unit 250.

そして、検索部310は、特定したデータ検索処理を用いて、特定したサービスに応じたデータ検索処理をおこなう。たとえば、検索部310は、特定したサービスに応じたSQL文、XML文などの検索問い合わせ文を、特定したサービスに応じたあて先へ送信する。   And the search part 310 performs the data search process according to the specified service using the specified data search process. For example, the search unit 310 transmits a search query sentence such as an SQL sentence or an XML sentence corresponding to the specified service to a destination corresponding to the specified service.

これにより、検索部310は、特定したサービスに応じた検索結果データを取得する。たとえば、検索部310は、特定したサービスに応じた検索結果データを、高齢者支援システム121、生活保護システム122、または共通データベース123から取得する。   Thereby, the search unit 310 acquires search result data corresponding to the specified service. For example, the search unit 310 acquires search result data corresponding to the specified service from the elderly support system 121, the welfare system 122, or the common database 123.

そして、検索部310は、取得した検索結果データを示すValueObjectを生成する。さらに、検索部310は、生成したValueObjectを権限判定処理部220へ送信する。   And the search part 310 produces | generates ValueObject which shows the acquired search result data. Further, the search unit 310 transmits the generated ValueObject to the authority determination processing unit 220.

事前固有処理実行部322は、検索処理部230によるデータ検索処理が実行される前におこなうべきサービス固有の処理である事前固有処理をおこなう。たとえば、事前固有処理実行部322は、サービス識別情報を検索部310から取得する。そして、事前固有処理実行部322は、格納部250に格納されているサービス定義ファイルを参照することにより、取得したサービス識別情報に対応付けられている事前固有処理を、実行すべき事前固有処理として特定する。事前固有処理をサービス定義ファイルに定義することで、バリデーションチェック処理などの事前固有処理を、容易に管理することができる。   The pre-unique processing execution unit 322 performs pre-unique processing that is service-specific processing that should be performed before the data search processing by the search processing unit 230 is executed. For example, the pre-unique process execution unit 322 acquires service identification information from the search unit 310. Then, the pre-unique process execution unit 322 refers to the service definition file stored in the storage unit 250 so that the pre-unique process associated with the acquired service identification information is set as the pre-unique process to be executed. Identify. By defining the pre-unique process in the service definition file, the pre-unique process such as the validation check process can be easily managed.

カラム値生成部324は、サービス固有のデータ項目値を生成するカラム値生成ロジックを実行する。たとえば、カラム値生成部324は、サービス識別情報を検索部310から取得する。そして、カラム値生成部324は、格納部250に格納されているサービス定義ファイルを参照することにより、取得したサービス識別情報に対応付けられているカラム値生成ロジックを、実行すべきカラム値生成ロジックとして特定する。   The column value generation unit 324 executes a column value generation logic that generates a service-specific data item value. For example, the column value generation unit 324 acquires service identification information from the search unit 310. Then, the column value generation unit 324 refers to the service definition file stored in the storage unit 250, thereby executing the column value generation logic associated with the acquired service identification information to be executed. As specified.

いずれのデータベースにも存在しないデータ項目を、要求元が要求する場合がある。このような場合であっても、カラム値生成部324は、検索部310が取得した他のデータ項目のデータなどから、データベースに存在しないデータ項目のデータを生成することができる。たとえば、データベースには「生年月日」というデータ項目が存在するが、いずれのデータベースにも存在しない「年齢」というデータ項目を要求元が要求したとする。この場合、カラム値生成部324は、検索部310が取得したデータ項目「生年月日」のデータに基づいて、データ項目「年齢」のデータを生成することができる。   The requester may request a data item that does not exist in any database. Even in such a case, the column value generation unit 324 can generate data of data items that do not exist in the database from the data of other data items acquired by the search unit 310. For example, it is assumed that the data source “birth date” exists in the database, but the requester requests a data item “age” that does not exist in any database. In this case, the column value generation unit 324 can generate data of the data item “age” based on the data item “birth date” acquired by the search unit 310.

事後固有処理実行部328は、検索処理部230によるデータ検索処理が実行された後におこなうべきサービス固有の処理である事後固有処理をおこなう。たとえば、事後固有処理実行部328は、サービス識別情報を検索部310から取得する。そして、事後固有処理実行部328は、格納部250に格納されているサービス定義ファイルを参照することにより、取得したサービス識別情報に対応付けられている事後固有処理を、実行すべき事後固有処理として特定する。事前固有処理をサービス定義ファイルに定義することで、データ加工処理などの事後固有処理を、容易に管理することができる。   The post-specific processing execution unit 328 performs post-specific processing, which is service-specific processing that should be performed after the data search processing by the search processing unit 230 is executed. For example, the post-unique process execution unit 328 acquires service identification information from the search unit 310. Then, the post-specific process execution unit 328 refers to the service definition file stored in the storage unit 250, and performs the post-specific process associated with the acquired service identification information as the post-specific process to be executed. Identify. By defining the pre-specific processing in the service definition file, post-specific processing such as data processing can be easily managed.

図4は、検索部310の機能構成例を示す。検索部310は、データ検索処理特定部400およびサービス識別情報取得部402を備える。また、検索部310は、検索パラメータ取得部412、検索問い合わせ文生成部414、通信接続部416、データ取得部418、第1取得件数特定部420、第2取得件数特定部422、送信件数特定部423、送信開始位置特定部424、およびデータ送信部426を備える。   FIG. 4 shows a functional configuration example of the search unit 310. The search unit 310 includes a data search processing specification unit 400 and a service identification information acquisition unit 402. The search unit 310 includes a search parameter acquisition unit 412, a search query statement generation unit 414, a communication connection unit 416, a data acquisition unit 418, a first acquisition number identification unit 420, a second acquisition number identification unit 422, and a transmission number identification unit. 423, a transmission start position specifying unit 424, and a data transmitting unit 426.

サービス識別情報取得部402は、サービスで利用するデータのデータ要求元から送信された、サービスを識別するためのサービス識別情報を取得する。たとえば、サービス識別情報取得部402は、権限判定処理部220から通信接続部430を介して取得したValueObjectから、上記サービス識別情報を取得する。   The service identification information acquisition unit 402 acquires service identification information for identifying a service transmitted from a data request source of data used in the service. For example, the service identification information acquisition unit 402 acquires the service identification information from the ValueObject acquired from the authority determination processing unit 220 via the communication connection unit 430.

データ検索処理特定部400は、格納部250が格納する複数のデータ検索処理の中から、サービス識別情報取得部402が取得したサービス識別情報に対応付けられているデータ検索処理を特定する。データ検索処理特定部400は、構成情報特定部404、処理プログラム特定部406、および通信接続方式特定部410を有する。   The data search process specifying unit 400 specifies a data search process associated with the service identification information acquired by the service identification information acquisition unit 402 from among a plurality of data search processes stored in the storage unit 250. The data search process specifying unit 400 includes a configuration information specifying unit 404, a processing program specifying unit 406, and a communication connection method specifying unit 410.

構成情報特定部404は、サービス識別情報取得部402が取得したサービス識別情報に対応付けられている、検索問い合わせ文の構成情報を特定する。たとえば、構成情報特定部404は、SQL文の構成情報を特定する。検索問い合わせ文の構成情報は、テーブル名、データ項目名、絞り込み条件を含む。構成情報特定部404は、格納部250に格納されているサービス定義ファイルを参照することにより、サービス識別情報取得部402が取得したサービス識別情報に対応付けられている検索問い合わせ文の構成情報を特定してもよい。   The configuration information specifying unit 404 specifies the configuration information of the search query sentence that is associated with the service identification information acquired by the service identification information acquiring unit 402. For example, the configuration information specifying unit 404 specifies the configuration information of the SQL sentence. The configuration information of the search query statement includes a table name, a data item name, and a narrowing condition. The configuration information specifying unit 404 specifies the configuration information of the search query sentence associated with the service identification information acquired by the service identification information acquiring unit 402 by referring to the service definition file stored in the storage unit 250. May be.

処理プログラム特定部406は、格納部250が格納する複数の処理プログラムの中から、サービス識別情報取得部402が取得したサービス識別情報に対応付けられている処理プログラムを特定する。処理プログラム特定部406は、格納部250に格納されているサービス定義ファイルを参照することにより、サービス識別情報取得部402が取得したサービス識別情報に対応付けられている処理プログラムを特定してもよい。   The processing program specifying unit 406 specifies a processing program associated with the service identification information acquired by the service identification information acquisition unit 402 from among a plurality of processing programs stored in the storage unit 250. The processing program specifying unit 406 may specify the processing program associated with the service identification information acquired by the service identification information acquiring unit 402 by referring to the service definition file stored in the storage unit 250. .

たとえば、処理プログラム特定部406は、データベース接続によるデータ検索処理をおこなう処理プログラムを特定する。他の例では、処理プログラム特定部406は、Webサービス接続またはHTTP接続によるデータ検索処理をおこなう処理プログラムを特定する。   For example, the processing program specifying unit 406 specifies a processing program for performing data search processing by database connection. In another example, the processing program specifying unit 406 specifies a processing program for performing a data search process through a Web service connection or an HTTP connection.

処理プログラムがDAO(Data Access Object)であって、DAO定義ファイルに定義されている場合、処理プログラム特定部406は、格納部250に格納されているサービス定義ファイルを参照することにより、サービス識別情報に対応付けられている、DAO定義ファイルを特定してもよい。そして、処理プログラム特定部406は、特定したDAO定義ファイルを参照することにより、DAOを特定してもよい。   When the processing program is DAO (Data Access Object) and is defined in the DAO definition file, the processing program specifying unit 406 refers to the service definition file stored in the storage unit 250 to thereby obtain service identification information. The DAO definition file that is associated with the URL may be specified. Then, the processing program specifying unit 406 may specify the DAO by referring to the specified DAO definition file.

通信接続方式特定部410は、格納部250が格納する複数の通信接続方式の中から、サービス識別情報取得部402が取得したサービス識別情報に対応付けられている通信接続方式を特定する。通信接続方式特定部410は、格納部250に格納されているサービス定義ファイルを参照することにより、サービス識別情報に対応付けられている通信接続方式を特定してもよい。   The communication connection method specifying unit 410 specifies a communication connection method associated with the service identification information acquired by the service identification information acquisition unit 402 from among a plurality of communication connection methods stored in the storage unit 250. The communication connection method specifying unit 410 may specify the communication connection method associated with the service identification information by referring to the service definition file stored in the storage unit 250.

たとえば、通信接続方式特定部410は、通信接続方式としてデータベース接続を特定する。他の例では、通信接続方式特定部410は、通信接続方式としてWebサービス接続またはHTTP接続を特定する。   For example, the communication connection method specifying unit 410 specifies a database connection as the communication connection method. In another example, the communication connection method specifying unit 410 specifies a Web service connection or an HTTP connection as the communication connection method.

通信接続方式がシステム接続定義ファイルに定義されている場合、通信接続方式特定部410は、格納部250に格納されているサービス定義ファイルを参照することにより、サービス識別情報に対応付けられている、システム接続定義ファイルを特定してもよい。そして、通信接続方式特定部410は、特定したシステム接続定義ファイルを参照することにより、通信接続方式を特定してもよい。   When the communication connection method is defined in the system connection definition file, the communication connection method specifying unit 410 is associated with the service identification information by referring to the service definition file stored in the storage unit 250. A system connection definition file may be specified. Then, the communication connection method specifying unit 410 may specify the communication connection method by referring to the specified system connection definition file.

検索パラメータ取得部412は、サービスで利用するデータのデータ要求元から送信された検索パラメータを取得する。たとえば、検索パラメータ取得部412は、権限判定処理部220から通信接続部430を介して取得したValueObjectから、上記検索パラメータを取得する。検索パラメータ取得部412は、データ要求元から送信された不要データ項目の識別情報をさらに取得してもよい。検索パラメータ取得部412は、データ要求元から送信された絞り込み条件をさらに取得してもよい。検索パラメータ取得部412は、データ要求元から送信されたソート条件をさらに取得してもよい。   The search parameter acquisition unit 412 acquires a search parameter transmitted from a data request source of data used in the service. For example, the search parameter acquisition unit 412 acquires the search parameter from the ValueObject acquired from the authority determination processing unit 220 via the communication connection unit 430. The search parameter acquisition unit 412 may further acquire identification information of unnecessary data items transmitted from the data request source. The search parameter acquisition unit 412 may further acquire the narrowing-down conditions transmitted from the data request source. The search parameter acquisition unit 412 may further acquire the sort condition transmitted from the data request source.

検索問い合わせ文生成部414は、構成情報特定部404が特定した構成情報および検索パラメータ取得部412が取得した検索パラメータを用いて、検索問い合わせ文を生成する。たとえば、検索問い合わせ文生成部414は、構成情報特定部404が特定した構成情報および検索パラメータ取得部412が取得した検索パラメータを用いて、SQL文を生成する。   The search query statement generation unit 414 generates a search query statement using the configuration information specified by the configuration information specification unit 404 and the search parameters acquired by the search parameter acquisition unit 412. For example, the search query statement generation unit 414 generates an SQL statement using the configuration information specified by the configuration information specification unit 404 and the search parameter acquired by the search parameter acquisition unit 412.

検索パラメータ取得部412が不要データ項目の識別情報を取得した場合、検索問い合わせ文生成部414は、上記不要データ項目以外のデータを取得するためのSQL文を生成してもよい。検索パラメータ取得部412が絞り込み条件を取得した場合、検索問い合わせ文生成部414は、上記絞り込み条件に合致するデータを取得するためのSQL文を生成してもよい。検索パラメータ取得部412がソート条件を取得した場合、検索問い合わせ文生成部414は、取得したソート条件にしたがって検索結果データがソートされる検索問い合わせ文を生成してもよい。   When the search parameter acquisition unit 412 acquires identification information of unnecessary data items, the search query statement generation unit 414 may generate an SQL statement for acquiring data other than the unnecessary data items. When the search parameter acquisition unit 412 acquires the narrowing condition, the search query sentence generation unit 414 may generate an SQL sentence for acquiring data that matches the narrowing condition. When the search parameter acquisition unit 412 acquires a sort condition, the search query statement generation unit 414 may generate a search query statement in which search result data is sorted according to the acquired sort condition.

通信接続部416は、通信接続方式特定部410によって特定された通信接続方式により、サービスで利用するデータのデータ取得先に通信接続する。たとえば、通信接続部416は、JDBCドライバによるデータベース接続、Webサービス接続、HTTP接続などの通信接続方式により、データ取得先に通信接続する。   The communication connection unit 416 establishes communication connection to the data acquisition destination of the data used in the service by the communication connection method specified by the communication connection method specifying unit 410. For example, the communication connection unit 416 communicates with a data acquisition destination by a communication connection method such as a database connection by a JDBC driver, a Web service connection, or an HTTP connection.

データ取得部418は、データ検索処理特定部400が特定したデータ検索処理により、サービスで利用するデータを取得する。具体的には、データ取得部418は、処理プログラム特定部406が特定した処理プログラムにより、サービスで利用するデータを取得する。また、データ取得部418は、通信接続方式特定部410が特定した通信接続方式により、サービスで利用するデータを取得する。   The data acquisition unit 418 acquires data used in the service by the data search process specified by the data search process specifying unit 400. Specifically, the data acquisition unit 418 acquires data used in the service by the processing program specified by the processing program specifying unit 406. Further, the data acquisition unit 418 acquires data used in the service by the communication connection method specified by the communication connection method specifying unit 410.

また、データ取得部418は、検索問い合わせ文生成部414が生成した検索問い合わせ文によってデータベースから検索されたデータのうちの、第1取得件数特定部420が特定した取得件数のデータを、データベースから取得してもよい。   Further, the data acquisition unit 418 acquires, from the database, the number of acquisition data specified by the first acquisition number specification unit 420 among the data searched from the database by the search inquiry sentence generated by the search inquiry sentence generation unit 414. May be.

データ取得部418は、検索問い合わせ文に該当するデータのデータ件数が、第1取得件数特定部420が特定した取得件数よりも多い場合は、第1取得件数特定部420が特定した取得件数のデータを、データベースから取得してもよい。また、データ取得部418は、検索問い合わせ文に該当するデータのデータ件数が、第1取得件数特定部420が特定した取得件数よりも多い場合は、所定のエラー処理をおこなってもよい。   If the number of data items corresponding to the search query statement is greater than the number of acquisition items specified by the first acquisition number specification unit 420, the data acquisition unit 418 specifies the number of acquisition items specified by the first acquisition number specification unit 420. May be obtained from a database. The data acquisition unit 418 may perform a predetermined error process when the number of data items corresponding to the search query statement is greater than the acquisition number specified by the first acquisition number specification unit 420.

第1取得件数特定部420および第2取得件数特定部422の双方が取得件数を特定する場合がある。このとき、第2取得件数特定部422が特定した取得件数が、前記第1取得件数特定部が取得した取得件数よりも少ない場合、データ取得部418は、第2取得件数特定部422が特定した取得件数のデータを、データベースから取得してもよい。一方、第2取得件数特定部422が特定した取得件数が、第1取得件数特定部420が特定した取得件数よりも多い場合、データ取得部418は、第1取得件数特定部420が特定した取得件数のデータを、データベースから取得してもよい。   Both the first acquisition number specifying unit 420 and the second acquisition number specifying unit 422 may specify the number of acquisitions. At this time, when the number of acquisitions specified by the second acquisition number specifying unit 422 is smaller than the number of acquisitions acquired by the first acquisition number specifying unit, the data acquisition unit 418 is specified by the second acquisition number specifying unit 422. The number of acquisition data may be acquired from the database. On the other hand, when the number of acquisitions specified by the second acquisition number specifying unit 422 is larger than the number of acquisitions specified by the first acquisition number specifying unit 420, the data acquisition unit 418 acquires the acquisition specified by the first acquisition number specifying unit 420. The number of data items may be acquired from the database.

検索問い合わせ文生成部414が検索問い合わせ文を生成した場合、データ取得部418は、生成した検索問い合わせ文により、サービスで利用するデータを取得してもよい。たとえば、検索問い合わせ文生成部414がSQL文を生成した場合、データ取得部418は、生成したSQL文により、サービスで利用するデータを取得してもよい。   When the search query statement generation unit 414 generates a search query statement, the data acquisition unit 418 may acquire data used in the service based on the generated search query statement. For example, when the search query statement generation unit 414 generates an SQL statement, the data acquisition unit 418 may acquire data used in the service from the generated SQL statement.

第1取得件数特定部420は、サービス識別情報取得部402が取得したサービス識別情報に対応付けられている取得件数を特定する。たとえば、第1取得件数特定部420は、格納部250に格納されているサービス定義ファイルを参照することにより、サービス識別情報に対応付けられている取得件数を特定する。   The first acquisition number specifying unit 420 specifies the number of acquisitions associated with the service identification information acquired by the service identification information acquisition unit 402. For example, the first acquisition number specifying unit 420 specifies the number of acquisitions associated with the service identification information by referring to the service definition file stored in the storage unit 250.

第2取得件数特定部422は、サービスで利用するデータのデータ要求元が要求する取得件数を特定する。たとえば、第2取得件数特定部422は、通信接続部430を介して権限判定処理部220から取得したValueObjectを参照することにより、データ要求元が要求する取得件数を特定する。   The second acquisition number specifying unit 422 specifies the number of acquisitions requested by the data request source of data used in the service. For example, the second acquisition number specifying unit 422 specifies the number of acquisitions requested by the data request source by referring to the ValueObject acquired from the authority determination processing unit 220 via the communication connection unit 430.

送信件数特定部423は、サービスで利用するデータのデータ要求元が要求する送信件数を特定する。たとえば、送信件数特定部423は、通信接続部430を介して権限判定処理部220から取得したValueObjectを参照することにより、データ要求元が要求する送信件数を特定する。   The transmission number specifying unit 423 specifies the number of transmissions requested by the data request source of data used in the service. For example, the transmission number specifying unit 423 specifies the number of transmissions requested by the data request source by referring to the ValueObject acquired from the authority determination processing unit 220 via the communication connection unit 430.

送信開始位置特定部424は、データの要求元が要求する、データの送信開始位置を特定する。たとえば、送信開始位置特定部424は、通信接続部430を介して権限判定処理部220から取得したValueObjectを参照することにより、上記送信開始位置を特定する。   The transmission start position specifying unit 424 specifies the data transmission start position requested by the data request source. For example, the transmission start position specifying unit 424 specifies the transmission start position by referring to the ValueObject acquired from the authority determination processing unit 220 via the communication connection unit 430.

データ送信部426は、データ取得部418が取得したデータを、データ要求元へ送信する。たとえば、データ送信部426は、データ取得部418が取得したデータを示すValueObjectを生成した後に、生成したValueObjectを通信接続部430を介して権限判定処理部220へ送信する。   The data transmission unit 426 transmits the data acquired by the data acquisition unit 418 to the data request source. For example, the data transmission unit 426 generates a value object indicating the data acquired by the data acquisition unit 418 and then transmits the generated value object to the authority determination processing unit 220 via the communication connection unit 430.

送信件数特定部423が送信件数を特定した場合、データ取得部418は、検索問い合わせ文生成部414が生成した検索問い合わせ文によってデータベースから検索されたデータのうちの、送信件数特定部423が特定した送信件数のデータを、データベースから取得してもよい。また、送信開始位置特定部424が送信開始位置を特定した場合、データ取得部418は、検索問い合わせ文生成部414が生成した検索問い合わせ文によってデータベースから検索されたデータのうちの、送信開始位置特定部424が特定した送信開始位置からのデータを、データベースから取得してもよい。   When the transmission number specifying unit 423 specifies the number of transmissions, the data acquisition unit 418 specifies the transmission number specifying unit 423 out of the data searched from the database by the search inquiry sentence generated by the search inquiry sentence generation unit 414. Data on the number of transmissions may be acquired from a database. In addition, when the transmission start position specifying unit 424 specifies the transmission start position, the data acquisition unit 418 specifies the transmission start position among the data searched from the database by the search query sentence generated by the search query sentence generation unit 414. Data from the transmission start position specified by the unit 424 may be acquired from the database.

図5は、データ検索システム100が受け付ける要求電文の一例を示す。要求電文は、「header」タグで示されるヘッダー部510および「body」タグで示されるボディ部520を含む。   FIG. 5 shows an example of a request message received by the data search system 100. The request message includes a header portion 510 indicated by a “header” tag and a body portion 520 indicated by a “body” tag.

ヘッダー部510において、「auth」タグ内には、権限判定処理部220による権限判定処理およびフィルタ処理部240によるフィルタリング処理に用いられるユーザ情報が示される。「auth」タグ内において、「userid」タグには、データ要求元でサービスを利用するユーザの識別情報が設定される。また、「auth」タグ内において、「params」タグ内には、上記ユーザに関するユーザ情報群が設定される。   In header section 510, user information used for authority determination processing by authority determination processing section 220 and filtering processing by filter processing section 240 is shown in the “auth” tag. In the “auth” tag, identification information of a user who uses the service at the data request source is set in the “userid” tag. In the “auth” tag, a user information group related to the user is set in the “params” tag.

「params」タグ内において、「param」には、ユーザ情報のパラメータ値が設定される。また、「param」タグの「name」属性には、ユーザ情報名が設定される。たとえば、図5に示す要求電文では、データ要求元のユーザは、個人ID「0000000001」を有する「○○課」の「課長」であることが示されている。   In the “params” tag, a parameter value of user information is set in “param”. In addition, a user information name is set in the “name” attribute of the “param” tag. For example, the request message shown in FIG. 5 indicates that the data requesting user is the “section manager” of “XX section” having the personal ID “0000000001”.

ボディ部520において、「request」タグの「serviceName」属性には、サービス識別情報が設定される。たとえば、図5に示す要求電文では、サービス識別情報として「Jumin」が設定されている。すなわち、図5に示す要求電文には、当該要求電文は「Jumin」サービスを要求するための要求電文であることが示されている。   In the body part 520, service identification information is set in the “serviceName” attribute of the “request” tag. For example, in the request message shown in FIG. 5, “Jumin” is set as the service identification information. That is, the request message shown in FIG. 5 indicates that the request message is a request message for requesting the “Jumin” service.

ボディ部520において、「params」タグ内にはデータ検索処理に用いられる検索パラメータ群が設定される。「params」タグ内において、「param」タグには、検索パラメータのパラメータ値が設定される。また、「param」タグの「itemName」属性には、検索パラメータとするデータ項目の論理名が設定される。論理名とは、データ要求元のシステムに対して公開されるデータ項目の名称を示す。たとえば、図5に示す要求電文では、データ項目「性別」が「男性」が設定されているデータだけを検索するデータ検索処理をデータ検索システム100に対して要求することが示されている。   In the body part 520, a search parameter group used for data search processing is set in the “params” tag. Within the “params” tag, the parameter value of the search parameter is set in the “param” tag. In addition, a logical name of a data item used as a search parameter is set in the “itemName” attribute of the “param” tag. The logical name indicates the name of a data item that is disclosed to the data requesting system. For example, the request message shown in FIG. 5 indicates that the data search system 100 is requested to perform data search processing for searching only data in which the data item “gender” is set to “male”.

ボディ部520において、「condition」タグにはデータ検索処理に用いられる絞り込み条件が設定される。ボディ部520において、「unnecessaries」タグ内には、データ要求元において不要なデータ項目群が設定される。「unnecessaries」タグ内において、「item」タグの「name」属性には、不要なデータ項目の論理名が設定される。たとえば、図5に示す要求電文では、不要なデータ項目の論理名として「住所」および「電話番号」が設定されている。   In the body part 520, a “condition” tag is set with a narrowing condition used for data search processing. In the body part 520, an unnecessary data item group is set in the “unnecessaries” tag in the data request source. In the “unnecessaries” tag, the logical name of the unnecessary data item is set in the “name” attribute of the “item” tag. For example, in the request message shown in FIG. 5, “address” and “telephone number” are set as logical names of unnecessary data items.

ボディ部520において、「order」タグ内には、検索結果データのソート条件が設定される。「order」タグ内において、「item」タグの「name」属性には、ソートのキー項目とするデータ項目の論理名が設定される。また、「item」タグの「order」属性には、「asc(昇順)」または「desc(降順)」が設定される。たとえば、図5に示す要求電文では、データ項目「個人番号」で昇順ソートすることをデータ検索システム100に対して要求することが示されている。   In the body part 520, a sort condition for search result data is set in the “order” tag. Within the “order” tag, the “name” attribute of the “item” tag is set with the logical name of the data item as the key item for sorting. In addition, “asc (ascending order)” or “desc (descending order)” is set in the “order” attribute of the “item” tag. For example, the request message shown in FIG. 5 indicates that the data search system 100 is requested to sort the data item “personal number” in ascending order.

ボディ部520において、「startRecord」タグには、検索結果データの送信開始位置が設定される。また、「requestCount」タグには、検索結果データの送信件数が設定される。たとえば、図5に示す要求電文では、検索結果データの「1」番目のレコードから「3」件分のレコードを送信するようにデータ検索システム100に対して要求することが示されている。   In the body part 520, the transmission start position of the search result data is set in the “startRecord” tag. In the “requestCount” tag, the number of transmissions of search result data is set. For example, the request message shown in FIG. 5 indicates that the data search system 100 is requested to transmit “3” records from the “1” -th record of the search result data.

ボディ部520において、「maxCount」タグには、データベースからのデータの取得件数が設定される。たとえば、図5に示す要求電文では、「10」件分のデータをデータベースから検索するようにデータ検索システム100に対して要求することが示されている。   In the body part 520, the number of data acquisitions from the database is set in the “maxCount” tag. For example, the request message shown in FIG. 5 indicates that the data retrieval system 100 is requested to retrieve “10” data from the database.

ボディ部520において、「expired」タグには、DBアクセス時のタイムアウト時間が設定される。たとえば、図5に示す要求電文では、「3」秒以上経過した場合はタイムアウトするようにデータ検索システム100に対して要求することが示されている。   In the body part 520, the “expired” tag is set with a timeout time during DB access. For example, the request message shown in FIG. 5 indicates that the data search system 100 is requested to time out when “3” seconds or more have elapsed.

図6は、格納部250が格納するサービス定義ファイルの一例を示す。サービス定義ファイルにおいて、「service」タグ内には、サービスに依存したデータ検索処理を特定するための情報であるサービス定義情報が設定される。サービス定義ファイルにおいて、「services」タグ内には、複数のサービスのサービス定義情報が設定できる。   FIG. 6 shows an example of a service definition file stored in the storage unit 250. In the service definition file, service definition information, which is information for specifying a data search process depending on the service, is set in a “service” tag. In the service definition file, service definition information of a plurality of services can be set in a “services” tag.

サービス定義ファイルにおいて、「name」タグには、サービス識別情報が設定される。たとえば、図6に示すサービス定義ファイルには、サービス識別情報として「Jumin」が設定されている。すなわち、図6に示すサービス定義には、当該サービス定義は「Jumin」サービスに依存したデータ検索処理を特定するためのサービス定義情報であることが示されている。   In the service definition file, service identification information is set in the “name” tag. For example, “Jumin” is set as service identification information in the service definition file shown in FIG. That is, the service definition shown in FIG. 6 indicates that the service definition is service definition information for specifying data search processing depending on the “Jumin” service.

サービス定義ファイルにおいて、「filteringName」タグには、フィルタ処理部240によるフィルタリング処理に用いられるフィルタリング条件名が設定される。サービス定義ファイルにおいて、「daoName」タグには、データ検索処理をおこなうDAOクラスを特定するためのDAO名が設定される。また、「daoServiceName」タグには、データ検索処理をおこなうメソッドおよび通信接続方式が定義されているシステム接続定義ファイルを特定するためのDAOサービス名が設定される。   In the service definition file, a filtering condition name used for the filtering process by the filter processing unit 240 is set in the “filteringName” tag. In the service definition file, a “daoName” tag is set with a DAO name for identifying a DAO class for performing data search processing. In the “daoServiceName” tag, a DAO service name for specifying a system connection definition file in which a method for performing data search processing and a communication connection method are defined is set.

サービス定義ファイルにおいて、「preLogicName」タグには、事前固有処理実行部322による事前固有処理に用いられる処理プログラム名が設定される。また、「postLogicName」タグには、事後固有処理実行部328による事後固有処理に用いられる処理プログラム名が設定される。また、「conditinLogic」タグには、検索問い合わせ文を構成する絞り込み条件を生成する処理プログラム名が設定される。また、「maxCount」タグには、データベースからのデータの取得件数が設定される。   In the service definition file, a processing program name used for the pre-unique process by the pre-unique process execution unit 322 is set in the “preLogicalName” tag. In the “postLogicName” tag, a processing program name used for the post-specific processing by the post-specific processing execution unit 328 is set. In addition, a name of a processing program that generates a narrowing-down condition that constitutes a search query statement is set in the “conditionLogic” tag. In addition, the number of data acquisitions from the database is set in the “maxCount” tag.

サービス定義ファイルにおいて、「sql」タグには、データ検索処理に用いる検索問い合わせ文を生成するための構成情報が設定される。「sql」タグ内において、「select」タグ内には、データ取得対象のデータ項目が複数設定される。   In the service definition file, configuration information for generating a search query sentence used for data search processing is set in the “sql” tag. Within the “sql” tag, a plurality of data items to be acquired are set in the “select” tag.

「select」タグ内において、「item」タグの「name」属性には、データ取得対象のデータ項目の論理名が設定される。「item」タグの「hide」属性には、当該データ項目をデータ要求元に送信する場合には「true」が設定され、当該データ項目をデータベースから取得するがデータ要求元に送信しない場合には「false」が設定される。   Within the “select” tag, the “name” attribute of the “item” tag is set to the logical name of the data item to be acquired. The “hide” attribute of the “item” tag is set to “true” when the data item is transmitted to the data request source, and when the data item is acquired from the database but not transmitted to the data request source. “False” is set.

「select」タグ内において、「column」タグの「value」属性には、データ取得対象のデータ項目のカラム名が設定される。「from」タグには、データ取得先のテーブル名が設定される。「where」タグには、絞り込み条件が設定される。「order」タグには、ソート条件が設定される。   Within the “select” tag, the “value” attribute of the “column” tag is set to the column name of the data item to be acquired. In the “from” tag, the table name of the data acquisition destination is set. In the “where” tag, a narrowing condition is set. A sort condition is set in the “order” tag.

たとえば、検索処理部230は、図6に示す構成情報から、以下の検索問い合わせ文を生成することができる。「select kojin_no,name,name_kana,address,tel,birth,blood,sex from JuminTbl where blood=A and sex = ? order by name」。   For example, the search processing unit 230 can generate the following search query sentence from the configuration information shown in FIG. “Select kojin_no, name, name_kana, address, tel, first, blood, sex from JuminTbl where blood = A and sex =? Order by name”.

図7は、検索部310によるデータ検索処理の一例を示す。図7では、共通データベース123に対するデータベース接続によるデータ検索処理の一例を説明する。なお、生活保護システム122に対するデータベース接続によるデータ検索処理については、共通データベース123に対するデータベース接続によるデータ検索処理と同様なので、説明を省略する。   FIG. 7 shows an example of data search processing by the search unit 310. In FIG. 7, an example of data search processing by database connection to the common database 123 will be described. Note that the data search process by database connection to the welfare system 122 is the same as the data search process by database connection to the common database 123, and thus the description thereof is omitted.

まず、検索部310は、権限判定処理部220から、ValueObjectを取得する(S701)。ValueObjectには、データ要求元から送信された、サービス識別情報、不要データ項目、ソート条件、および検索パラメータが示されている。つぎに、検索部310は、格納部250に格納されている複数のサービス定義ファイルの中から、S701で取得したサービス識別情報に対応付けられているサービス定義ファイルを取得する(S702)。   First, the search unit 310 acquires a ValueObject from the authority determination processing unit 220 (S701). In ValueObject, service identification information, unnecessary data items, sort conditions, and search parameters transmitted from the data request source are shown. Next, the search unit 310 acquires a service definition file associated with the service identification information acquired in S701 from a plurality of service definition files stored in the storage unit 250 (S702).

つぎに、検索部310は、取得したサービス定義ファイルを参照することにより、データ検索処理に用いる検索問い合わせ文の構成情報を特定する(S703)。そして、検索部310は、S703で特定した構成情報およびS701で取得した検索パラメータを用いて、検索問い合わせ文を生成する(S704)。   Next, the search unit 310 refers to the acquired service definition file to identify the configuration information of the search query statement used for the data search process (S703). And the search part 310 produces | generates a search inquiry sentence using the structure information specified by S703, and the search parameter acquired by S701 (S704).

ここでは、検索部310は、S701で取得した不要データ項目を含む、全てのデータ項目を取得するための検索問い合わせ文を生成する。他の例では、検索部310は、S701で取得した不要データ項目以外のデータ項目を取得するための検索問い合わせ文を生成してもよい。たとえば、検索部310は、データ項目「address」およびデータ項目「tel」以外のデータ項目を取得する検索問い合わせ文を生成してもよい。また、検索部310は、S701で取得したソート条件にしたがって検索結果データがソートされる検索問い合わせ文を生成する。たとえば、図7に示す例では、検索部310は、データ項目「konjin_no」で昇順ソートされる検索問い合わせ文を生成する。サービス定義ファイルおよび要求電文の双方にソート条件が示されている場合、検索部310は、要求電文に示されているソート条件を優先して用いて、検索問い合わせ文を生成してもよい。   Here, the search unit 310 generates a search query statement for acquiring all data items including the unnecessary data item acquired in S701. In another example, the search unit 310 may generate a search query statement for acquiring a data item other than the unnecessary data item acquired in S701. For example, the search unit 310 may generate a search query statement that acquires data items other than the data item “address” and the data item “tel”. In addition, the search unit 310 generates a search query statement in which the search result data is sorted according to the sort condition acquired in S701. For example, in the example illustrated in FIG. 7, the search unit 310 generates a search query sentence that is sorted in ascending order by the data item “konjin_no”. When the sort condition is indicated in both the service definition file and the request message, the search unit 310 may generate the search query message by using the sort condition indicated in the request message with priority.

つぎに、検索部310は、格納部250に格納されているDAO定義ファイルを参照することにより(S705)、S701で取得したサービス識別情報に対応付けられている処理プログラムを特定する(S706)。たとえば、図7に示す例では、まず、検索部310は、S702で取得したサービス定義ファイルを参照することにより、サービス識別情報「Jumin」に対応付けられているDAO名として「Jumin_dao」を特定する。また、サービス識別情報「Jumin」に対応付けられているDAOサービス名として「Select」を特定する。そして、検索部310は、格納部250に格納されているDAO定義ファイルを参照することにより、DAO名「Jumin_dao」に対応付けられているDAOクラス「RdbmsSelectDAO」を特定する。また、DAOサービス名「Select」に対応付けられているメソッド「select」を特定する。   Next, the search unit 310 refers to the DAO definition file stored in the storage unit 250 (S705), and specifies the processing program associated with the service identification information acquired in S701 (S706). For example, in the example illustrated in FIG. 7, first, the search unit 310 refers to the service definition file acquired in S <b> 702 to identify “Jumin_dao” as the DAO name associated with the service identification information “Jumin”. . In addition, “Select” is specified as the DAO service name associated with the service identification information “Jumin”. Then, the search unit 310 refers to the DAO definition file stored in the storage unit 250 to identify the DAO class “RdbmsSelectDAO” associated with the DAO name “Jumin_dao”. Also, the method “select” associated with the DAO service name “Select” is specified.

つぎに、検索部310は、S706で特定した処理プログラムを実行することにより、データベース接続をおこない(S707)、S704で生成した検索問い合わせ文を接続先のデータベースへ送信する(S708)。これにより、検索部310は、接続先のデータベースから検索結果データを取得する(S709)。そして、検索部310は、取得した検索結果データが示されたValueObjectを、権限判定処理部220へ送信する(S710)。フィルタ処理部240によるフィルタリング処理をおこなう場合は、検索部310は、取得した検索結果データが示されたValueObjectを、フィルタ処理部240へ送信してもよい。なお、S709で不要データ項目を含む全てのデータ項目を取得した場合、S710では、取得した検索結果データのうち、不要データ項目以外のデータ項目を、検索結果データとして権限判定処理部220へ送信してもよい。   Next, the search unit 310 connects to the database by executing the processing program specified in S706 (S707), and transmits the search query generated in S704 to the connection destination database (S708). Thereby, the search unit 310 acquires search result data from the connection destination database (S709). Then, the search unit 310 transmits ValueObject indicating the acquired search result data to the authority determination processing unit 220 (S710). When performing the filtering process by the filter processing unit 240, the search unit 310 may transmit the ValueObject indicating the acquired search result data to the filter processing unit 240. When all data items including unnecessary data items are acquired in S709, in S710, data items other than unnecessary data items are transmitted to the authority determination processing unit 220 as search result data in the acquired search result data. May be.

図8は、検索部310によるデータ検索処理の他の一例を示す。図8では、高齢者支援システム121に対するWebサービス接続によるデータ検索処理の一例を説明する。   FIG. 8 shows another example of data search processing by the search unit 310. In FIG. 8, an example of data search processing by web service connection to the elderly support system 121 will be described.

まず、検索部310は、権限判定処理部220から、ValueObjectを取得する(S801)。ValueObjectには、データ要求元から送信された、サービス識別情報、不要データ項目、ソート条件、および検索パラメータが示されている。つぎに、検索部310は、格納部250に格納されている複数のサービス定義ファイルの中から、S801で取得したサービス識別情報に対応付けられているサービス定義ファイルを取得する(S802)。   First, the search unit 310 acquires a value object from the authority determination processing unit 220 (S801). In ValueObject, service identification information, unnecessary data items, sort conditions, and search parameters transmitted from the data request source are shown. Next, the search unit 310 acquires a service definition file associated with the service identification information acquired in S801 from a plurality of service definition files stored in the storage unit 250 (S802).

つぎに、検索部310は、取得したサービス定義ファイルを参照することにより、データ検索処理に用いる検索問い合わせ文の構成情報を特定する(S803)。そして、検索部310は、S803で特定した構成情報およびS801で取得した検索パラメータを用いて、検索問い合わせ文を生成する(S804)。   Next, the search unit 310 refers to the acquired service definition file to identify the configuration information of the search query statement used for the data search process (S803). Then, the search unit 310 generates a search query sentence using the configuration information specified in S803 and the search parameters acquired in S801 (S804).

ここでは、検索部310は、S801で取得した不要データ項目を含む、全てのデータ項目を取得するための検索問い合わせ文を生成する。他の例では、S801で取得した不要データ項目以外のデータ項目を取得するための検索問い合わせ文を生成してもよい。たとえば、検索部310は、データ項目「address」およびデータ項目「tel」以外のデータ項目を取得する検索問い合わせ文を生成してもよい。また、検索部310は、S801で取得したソート条件にしたがって検索結果データがソートされる検索問い合わせ文を生成する。たとえば、図8に示す例では、検索部310は、データ項目「konjin_no」で昇順ソートされる検索問い合わせ文を生成する。   Here, the search unit 310 generates a search query statement for acquiring all data items including the unnecessary data item acquired in S801. In another example, a search query statement for acquiring a data item other than the unnecessary data item acquired in S801 may be generated. For example, the search unit 310 may generate a search query statement that acquires data items other than the data item “address” and the data item “tel”. In addition, the search unit 310 generates a search query statement in which the search result data is sorted according to the sort condition acquired in S801. For example, in the example illustrated in FIG. 8, the search unit 310 generates a search query sentence that is sorted in ascending order by the data item “konjin_no”.

つぎに、検索部310は、格納部250に格納されているDAO定義ファイルを参照することにより(S805)、S801で取得したサービス識別情報に対応付けられている処理プログラムを特定する(S806)。たとえば、図8に示す例では、まず、検索部310は、S802で取得したサービス定義ファイルを参照することにより、サービス識別情報「Koureisya」に対応付けられているDAO名として「Koureisya_dao」を特定する。また、サービス識別情報「Koureisya」に対応付けられているDAOサービス名として「Koureisya_Web_Connect」を特定する。そして、検索部310は、格納部250に格納されているDAO定義ファイルを参照することにより、DAO名「Koureisya_dao」に対応付けられているDAOクラス「SystemCoopDAO」を特定する。また、DAOサービス名「Koureisya_Web_Connect」に対応付けられているメソッド「execute」を特定する。   Next, the search unit 310 refers to the DAO definition file stored in the storage unit 250 (S805), and identifies the processing program associated with the service identification information acquired in S801 (S806). For example, in the example illustrated in FIG. 8, first, the search unit 310 refers to the service definition file acquired in S <b> 802 to identify “Kouriseya_dao” as the DAO name associated with the service identification information “Kouriseya”. . In addition, “Kouriseya_Web_Connect” is specified as the DAO service name associated with the service identification information “Kouriseya”. Then, the search unit 310 refers to the DAO definition file stored in the storage unit 250 to identify the DAO class “SystemCoopDAO” associated with the DAO name “Kouriseya_dao”. In addition, the method “execute” associated with the DAO service name “Kouriseya_Web_Connect” is specified.

つぎに、検索部310は、格納部250に格納されているシステム接続定義ファイルを参照することにより(S807)、S801で取得したサービス識別情報に対応付けられている通信接続方式を特定する(S808)。たとえば、図8に示す例では、まず、検索部310は、S802で取得したサービス定義ファイルを参照することにより、サービス識別情報「Koureisya」に対応付けられているDAOサービス名として「Koureisya_Web_Connect」を特定する。そして、検索部310は、格納部250に格納されているシステム接続定義ファイルを参照することにより、DAOサービス名「Koureisya_Web_Connect」と同名のシステム接続サービス「Koureisya_Web_Connect」に対応付けられているGW(ゲートウェイ)実装クラス「KoureisyaWebConnect」および接続方法(Webサービス接続)、uriなどの接続用情報を特定する。   Next, the search unit 310 refers to the system connection definition file stored in the storage unit 250 (S807), and specifies the communication connection method associated with the service identification information acquired in S801 (S808). ). For example, in the example illustrated in FIG. 8, first, the search unit 310 refers to the service definition file acquired in S802 to identify “Kouriseya_Web_Connect” as the DAO service name associated with the service identification information “Kouriseya”. To do. Then, the search unit 310 refers to the system connection definition file stored in the storage unit 250, so that the GW (gateway) associated with the system connection service “Kouriseya_Web_Connect” having the same name as the DAO service name “Kouresia_Web_Connect” is obtained. The connection information such as the implementation class “Kouriseya WebConnect”, the connection method (Web service connection), and uri is specified.

つぎに、検索部310は、S806で特定した処理プログラムを実行することにより、S808で特定した通信接続方式を用いた通信接続をおこなう(S809)。具体的には、検索部310は、DAOクラス「SystemCoopDAO」のメソッド「execute」を実行する。メソッド「execute」は、システム接続サービスとしてGW実装クラス「KoureisyaWebConnect」を呼び出すことにより、接続先のシステムに対する通信接続をおこなう。そして、検索部310は、S804で生成した検索問い合わせ文を、接続先のシステムが要求する形式で、接続先のシステムへ送信する(S810)。たとえば、図8に示す例では、検索部310は、S804で生成した検索問い合わせ文を、XML形式で送信する。これにより、検索部310は、接続先のシステムから検索結果データを取得する(S811)。そして、検索部310は、取得した検索結果データが示されたValueObjectを、権限判定処理部220へ送信する(S812)。フィルタ処理部240によるフィルタリング処理をおこなう場合は、検索部310は、取得した検索結果データが示されたValueObjectを、フィルタ処理部240へ送信してもよい。なお、S811で不要データ項目を含む全てのデータ項目を取得した場合、S812では、取得した検索結果データのうち、不要データ項目以外のデータ項目を、検索結果データとして権限判定処理部220へ送信してもよい。   Next, the search unit 310 executes communication processing using the communication connection method specified in S808 by executing the processing program specified in S806 (S809). Specifically, the search unit 310 executes the method “execute” of the DAO class “SystemCoopDAO”. The method “execute” performs communication connection to the connection destination system by calling the GW implementation class “KouriseyaWebConnect” as a system connection service. Then, the search unit 310 transmits the search query generated in S804 to the connection destination system in a format requested by the connection destination system (S810). For example, in the example illustrated in FIG. 8, the search unit 310 transmits the search query sentence generated in S804 in XML format. Accordingly, the search unit 310 acquires search result data from the connection destination system (S811). Then, the search unit 310 transmits ValueObject indicating the acquired search result data to the authority determination processing unit 220 (S812). When performing the filtering process by the filter processing unit 240, the search unit 310 may transmit the ValueObject indicating the acquired search result data to the filter processing unit 240. When all data items including unnecessary data items are acquired in S811, in S812, data items other than unnecessary data items are transmitted as search result data to the authority determination processing unit 220 in the acquired search result data. May be.

このように、本実施形態のデータ検索システム100によれば、複数のサービスのそれぞれに対してデータ検索処理を予め定義しておくことができる。これにより、複数のサービスのそれぞれに対して、サービスに応じた適切なデータ検索処理をおこなうことができる。   Thus, according to the data search system 100 of this embodiment, the data search process can be defined in advance for each of a plurality of services. As a result, it is possible to perform appropriate data search processing corresponding to the service for each of the plurality of services.

また、本実施形態のデータ検索システム100によれば、データ要求元は、サービス識別情報をデータ検索システム100に送信するだけで、データ検索処理をデータ検索システム100におこなわせることができる。このため、データ要求元にデータ検索処理を実装する必要がなく、データ要求元のシステム構成を簡素化できる。   Further, according to the data search system 100 of the present embodiment, the data request source can cause the data search system 100 to perform the data search process simply by transmitting the service identification information to the data search system 100. For this reason, it is not necessary to implement data search processing at the data request source, and the system configuration of the data request source can be simplified.

また、本実施形態のデータ検索システム100によれば、サービスインタフェース部210によって、データ検索処理の要求を受け付けるためのインタフェースが共通化されている。このため、データ要求元を追加する場合、追加されるデータ要求元は、既存のデータ要求元に実装されているインタフェースを再利用できる。   Further, according to the data search system 100 of the present embodiment, the service interface unit 210 has a common interface for receiving a request for data search processing. For this reason, when a data request source is added, the added data request source can reuse the interface implemented in the existing data request source.

また、本実施形態のデータ検索システム100によれば、サービス定義ファイルにより、データ検索処理の設定を一括して管理できる。このため、サービスを追加する場合であっても、追加されるサービスに対するデータ検索処理の設定を容易におこなうことができる。   Further, according to the data search system 100 of the present embodiment, settings for data search processing can be collectively managed by the service definition file. Therefore, even when a service is added, it is possible to easily set data search processing for the added service.

また、本実施形態のデータ検索システム100によれば、データ検索処理に用いる処理プログラムおよび通信接続方式を、複数のサービスで共用できる。このため、サービスを追加する場合であっても、追加されるサービス用の処理プログラムおよび通信接続方式を設ける必要がない。追加されるサービスは、既存のサービスが利用する処理プログラムおよび通信接続方式を利用できる。   Further, according to the data search system 100 of the present embodiment, a processing program and a communication connection method used for data search processing can be shared by a plurality of services. Therefore, even when a service is added, there is no need to provide a processing program and a communication connection method for the added service. The added service can use the processing program and communication connection method used by the existing service.

また、本実施形態のデータ検索システム100によれば、複数のサービスでサービス定義ファイルを共用することで、複数のサービスでデータ検索処理を共用できる。これにより、既にキャッシュされているデータ検索処理を有効利用することができるので、データ検索処理の処理効率を向上することができる。具体的には、たとえば、複数のデータ要求元が同様の検索をおこなう場合であっても、それぞれのデータ要求元が他のデータ要求元と異なるSQL文を実行してしまうと、RDMSのキャッシュ効果を得ることができない。本実施形態のデータ検索システム100によれば、同様の検索を行う検索サービスを定義・規定し、それを複数のデータ利用元が共通利用する事で、複数のデータ要求元のそれぞれが同一のSQL文を実行することができるので、RDMSのキャッシュ効果を得ることができ、データ検索処理の処理効率向上を図ることができる。   Further, according to the data search system 100 of the present embodiment, the data search process can be shared by a plurality of services by sharing the service definition file by a plurality of services. As a result, the cached data search process can be used effectively, so that the processing efficiency of the data search process can be improved. Specifically, for example, even when a plurality of data requesters perform the same search, if each data requester executes a different SQL statement from the other data requesters, the cache effect of RDMS Can't get. According to the data search system 100 of the present embodiment, a search service for performing a similar search is defined and defined, and a plurality of data use sources share the same, so that each of a plurality of data request sources has the same SQL. Since the statement can be executed, the cache effect of RDMS can be obtained, and the processing efficiency of the data search process can be improved.

図9は、データ取得部418によるデータ取得処理およびデータ送信部426によるデータ送信処理の一例を示す。図9では、共通データベース123からデータを取得する例を示す。   FIG. 9 shows an example of data acquisition processing by the data acquisition unit 418 and data transmission processing by the data transmission unit 426. FIG. 9 shows an example of acquiring data from the common database 123.

まず、データ取得部418は、第1取得件数特定部420から、サービス識別情報に対応付けられている取得件数を取得する(S901)。たとえば、データ取得部418は、サービス識別情報に対応付けられている取得件数として「50」を取得する。   First, the data acquisition unit 418 acquires the number of acquisitions associated with the service identification information from the first acquisition number identification unit 420 (S901). For example, the data acquisition unit 418 acquires “50” as the number of acquisitions associated with the service identification information.

つぎに、データ取得部418は、第2取得件数特定部422から、データ要求元が要求する取得件数を取得する(S902)。たとえば、データ取得部418は、データ要求元が要求する取得件数として「100」を取得する。   Next, the data acquisition unit 418 acquires the number of acquisitions requested by the data requester from the second acquisition number identification unit 422 (S902). For example, the data acquisition unit 418 acquires “100” as the number of acquisitions requested by the data request source.

第2取得件数特定部422から取得した取得件数は、第1取得件数特定部420から取得した取得件数よりも多い。このため、データ取得部418は、第1取得件数特定部420から取得した取得件数である「50」件分の検索結果データを、共通データベース123から取得することを許可する。したがって、データ取得部418は、検索結果データとして「50」件以上ヒットする場合であっても、「50」件分の検索結果データを共通データベース123から取得することを許可する(S903)。   The number of acquisitions acquired from the second acquisition number identification unit 422 is greater than the number of acquisitions acquired from the first acquisition number identification unit 420. For this reason, the data acquisition unit 418 permits the search result data for “50”, which is the number of acquisitions acquired from the first acquisition number specifying unit 420, to be acquired from the common database 123. Therefore, even if “50” or more hits are found as search result data, the data acquisition unit 418 permits acquisition of “50” search result data from the common database 123 (S903).

つぎに、データ送信部426は、送信件数特定部423から、データ要求元が要求する送信件数を取得する(S904)。たとえば、データ送信部426は、データ要求元が要求する送信件数として「5」を取得する。つぎに、データ送信部426は、送信開始位置特定部424から、データ要求元が要求する送信開始位置を取得する(S905)。たとえば、データ送信部426は、データ要求元が要求する送信開始位置として「1」を取得する。   Next, the data transmission unit 426 acquires the number of transmissions requested by the data requester from the transmission number identification unit 423 (S904). For example, the data transmission unit 426 acquires “5” as the number of transmissions requested by the data request source. Next, the data transmission unit 426 acquires the transmission start position requested by the data requester from the transmission start position specifying unit 424 (S905). For example, the data transmission unit 426 acquires “1” as the transmission start position requested by the data request source.

そして、データ送信部426は、データ取得部418が取得することを許可した検索結果データのうちの、「1」番目のレコードから「5」件分のレコードを取得する(S906)。たとえば、データ送信部426は、取得することを許可した「50」件分の検索結果データのうちの「1」番目のレコードから「5」件分のレコードを、共通データベース123からフェッチしてメモリ上に展開して取得する。そして、データ送信部426は、取得したレコードと、次のレコードが存在する旨を示す情報とを、権限判定処理部220へ送信する(S907)。   Then, the data transmission unit 426 acquires “5” records from the “1” -th record in the search result data permitted to be acquired by the data acquisition unit 418 (S906). For example, the data transmission unit 426 fetches “5” records from the “1” -th record among the “50” search result data permitted to be acquired from the common database 123 and stores them in the memory. Get expanded above. Then, the data transmission unit 426 transmits the acquired record and information indicating that the next record exists to the authority determination processing unit 220 (S907).

続いて、たとえば、データ送信部426は、データ要求元が要求する送信件数として「10」を取得する(S908)。さらに、データ送信部426は、データ要求元が要求する送信開始位置として「6」を取得する(S909)。   Subsequently, for example, the data transmission unit 426 acquires “10” as the number of transmissions requested by the data requester (S908). Further, the data transmission unit 426 acquires “6” as the transmission start position requested by the data request source (S909).

この場合、データ送信部426は、データ取得部418が取得することを許可した検索結果データのうちの、「6」番目のレコードから「10」件分のレコードを取得する(S910)。たとえば、データ送信部426は、取得することを許可した「50」件分の検索結果データのうちの「6」番目のレコードから「10」件分のレコードを、共通データベース123からフェッチしてメモリ上に展開して取得する。そして、データ送信部426は、取得したレコードと、次のレコードが存在する旨を示す情報とを、権限判定処理部220へ送信する(S911)。   In this case, the data transmission unit 426 acquires “10” records from the “6” th record in the search result data permitted to be acquired by the data acquisition unit 418 (S910). For example, the data transmission unit 426 fetches “10” records from the “6” -th record among the “50” search result data permitted to be acquired from the common database 123 and stores them in the memory. Get expanded above. Then, the data transmission unit 426 transmits the acquired record and information indicating that the next record exists to the authority determination processing unit 220 (S911).

続いて、送信開始位置特定部424から取得した送信開始位置が「51」以降となる場合がある。また、送信開始位置特定部424から取得した送信開始位置と送信件数特定部423から取得した送信件数との合計が「51」以上となる場合がある。これらの場合、データ取得部418は、「51」件目以降の検索結果データを、さらに共通データベース123から取得することを許可するか、または所定のエラー処理をおこなってもよい。   Subsequently, the transmission start position acquired from the transmission start position specifying unit 424 may be “51” or later. In addition, the sum of the transmission start position acquired from the transmission start position specifying unit 424 and the number of transmissions acquired from the transmission number specifying unit 423 may be “51” or more. In these cases, the data acquisition unit 418 may allow the search result data for the “51” th and subsequent items to be further acquired from the common database 123, or may perform predetermined error processing.

このように、本実施の形態によれば、複数のサービスのそれぞれに対して、取得件数を定義できる。これにより、複数のサービスのそれぞれにおいて、サービス固有の最適な件数のデータを、データベースから取得することができる。   Thus, according to the present embodiment, the number of acquisition cases can be defined for each of a plurality of services. Thereby, in each of the plurality of services, the optimum number of data unique to the service can be acquired from the database.

また、本実施の形態によれば、データ要求元が要求する取得件数を、データ要求元から取得できる。これにより、複数のサービスのそれぞれにおいて、データ要求元のシステムに応じた最適な件数のデータを、データベースから取得することができる。   Further, according to the present embodiment, the number of acquisitions requested by the data request source can be acquired from the data request source. Thereby, in each of the plurality of services, the optimum number of data corresponding to the data requesting system can be acquired from the database.

また、本実施の形態によれば、データ要求元が要求する送信件数を、データ要求元から取得できる。これにより、複数のサービスのそれぞれにおいて、データ要求元のシステムに応じた最適な件数のデータを、データ要求元へ送信することができる。   Further, according to the present embodiment, the number of transmissions requested by the data request source can be acquired from the data request source. Thereby, in each of the plurality of services, the optimum number of data corresponding to the data requesting system can be transmitted to the data requesting source.

また、本実施の形態によれば、データ要求元から取得した取得件数が、予めサービスに対応付けられている取得件数を超える場合は、予めサービスに対応付けられている取得件数のデータを、データベースから取得する。これにより、データ検索システム100において、一のサービスのデータ検索処理に、大量のリソースが占有されることを防止することができる。   Further, according to the present embodiment, when the number of acquisitions acquired from the data request source exceeds the number of acquisitions previously associated with the service, the data on the number of acquisitions previously associated with the service is stored in the database. Get from. Thereby, in the data search system 100, it is possible to prevent a large amount of resources from being occupied in the data search process of one service.

図10は、権限判定処理部220による権限判定処理の一例を示す。まず、権限判定処理部220は、サービスインタフェース部210から、ValueObjectを取得する(S1001)。取得したValueObjectには、サービス識別情報、ユーザ情報、および検索パラメータが示されている。   FIG. 10 shows an example of authority determination processing by the authority determination processing unit 220. First, the authority determination processing unit 220 acquires a value object from the service interface unit 210 (S1001). In the acquired ValueObject, service identification information, user information, and search parameters are shown.

図10に示す例では、取得したValueObjectには、サービス識別情報として「住民基本情報取得サービス」が示されている。また、ユーザ情報の部署名として、「○○課」が示されている。また、ユーザ情報の職位名として、「課長」が示されている。   In the example shown in FIG. 10, “Basic Resident Information Acquisition Service” is shown as service identification information in the acquired ValueObject. In addition, “XX section” is shown as the department name of the user information. In addition, “section manager” is shown as the title of the user information.

つぎに、権限判定処理部220は、格納部に格納されている権限判定ルール定義ファイルを参照することにより(S1002)、取得したサービス識別情報に対応付けられている権限判定ルールを特定する(S1003)。図10に示す例では、権限判定処理部220は、サービス識別情報「住民基本情報取得サービス」に対応付けられている権限判定ルールの「必要権限レベル」として「REF」を特定する。また、サービス識別情報「住民基本情報取得サービス」に対応付けられている権限判定ルールの「ルールクラス」として「A」を特定する。   Next, the authority determination processing unit 220 refers to the authority determination rule definition file stored in the storage unit (S1002), and specifies the authority determination rule associated with the acquired service identification information (S1003). ). In the example illustrated in FIG. 10, the authority determination processing unit 220 identifies “REF” as the “required authority level” of the authority determination rule associated with the service identification information “resident basic information acquisition service”. Also, “A” is specified as the “rule class” of the authority determination rule associated with the service identification information “resident basic information acquisition service”.

本実施形態では、権限レベルのパラメータとして「UPD」、「REF」、および「NON」を用いている。「UPD」は、更新権限があることを示す。「REF」は、更新権限はないが、参照権限があることを示す。「NON」は、更新権限も参照権限もないことを示す。   In this embodiment, “UPD”, “REF”, and “NON” are used as authority level parameters. “UPD” indicates that there is an update authority. “REF” indicates that there is no update authority, but there is a reference authority. “NON” indicates that neither update authority nor reference authority exists.

つぎに、権限判定処理部220は、格納部250に格納されている複数のルールクラスの中から、特定したルールクラス「A」を取得する(S1004)。そして、権限判定処理部220は、サービスインタフェース部210から取得したユーザ情報と、格納部250から取得したルールクラスとに基づいて、ユーザに与えられている「権限レベル」を特定する(S1005)。図10に示す例では、権限判定処理部220は、「○○課」の「課長」に与えられている「権限レベル」として「UPD」を特定する。   Next, the authority determination processing unit 220 acquires the specified rule class “A” from the plurality of rule classes stored in the storage unit 250 (S1004). Then, the authority determination processing unit 220 identifies an “authority level” given to the user based on the user information acquired from the service interface unit 210 and the rule class acquired from the storage unit 250 (S1005). In the example illustrated in FIG. 10, the authority determination processing unit 220 identifies “UPD” as the “authority level” given to the “section manager” of “XXX section”.

つぎに、権限判定処理部220は、特定した「必要権限レベル」と、特定した「権限レベル」とを比較することにより、権限を判定する(S1006)。ここで、権限判定処理部220は、特定した「権限レベル」が、特定した「必要権限レベル」以上の場合は、権限があると判定してもよい。また、権限判定処理部220は、特定した「権限レベル」が、特定した「必要権限レベル」未満の場合は、権限がないと判定してもよい。図10に示す例では、権限判定処理部220は、特定した「権限レベル」である「UPD」が、特定した「必要権限レベル」である「REF」以上であることから、権限がある、すなわち「○○課」の「課長」は、「住民基本情報取得サービス」を利用する権限があると判定する。   Next, the authority determination processing unit 220 determines the authority by comparing the specified “required authority level” with the specified “authority level” (S1006). Here, the authority determination processing unit 220 may determine that there is an authority when the specified “authority level” is equal to or higher than the specified “required authority level”. The authority determination processing unit 220 may determine that there is no authority when the specified “authority level” is less than the specified “required authority level”. In the example illustrated in FIG. 10, the authority determination processing unit 220 has authority because “UPD” that is the specified “authority level” is equal to or higher than “REF” that is the specified “required authority level”. The “section manager” of “XX section” determines that he / she has the authority to use “basic information acquisition service”.

権限判定処理部220は、権限があると判定した場合、サービス識別情報および検索パラメータを示すValueObjectを検索処理部230へ送信する(S1007)。これにより、権限判定処理部220は、検索処理部230に対してデータ検索処理を要求する。権限判定処理部220は、サービスインタフェース部210から取得したValueObjectを、検索処理部230へ送信してもよい。   When the authority determination processing unit 220 determines that there is an authority, the authority determination processing unit 220 transmits value object indicating service identification information and search parameters to the search processing unit 230 (S1007). As a result, the authority determination processing unit 220 requests the search processing unit 230 to perform a data search process. The authority determination processing unit 220 may transmit the ValueObject acquired from the service interface unit 210 to the search processing unit 230.

図11は、権限判定処理部220による権限判定処理の他の一例を示す。まず、権限判定処理部220は、サービスインタフェース部210から、ValueObjectを取得する(S1101)。取得したValueObjectには、サービス識別情報、ユーザ情報、および検索パラメータが示されている。   FIG. 11 shows another example of authority determination processing by the authority determination processing unit 220. First, the authority determination processing unit 220 acquires a value object from the service interface unit 210 (S1101). In the acquired ValueObject, service identification information, user information, and search parameters are shown.

図11に示す例では、取得したValueObjectには、サービス識別情報として「住民所得情報取得サービス」が示されている。また、ユーザ情報の部署名として、「△△課」が示されている。また、ユーザ情報の職位名として、「次長」が示されている。   In the example shown in FIG. 11, “Resident Income Information Acquisition Service” is shown as service identification information in the acquired ValueObject. In addition, “△△ section” is shown as the department name of the user information. In addition, “Deputy Director” is shown as the title of the user information.

つぎに、権限判定処理部220は、格納部に格納されている権限判定ルール定義ファイルを参照することにより(S1102)、取得したサービス識別情報に対応付けられている権限判定ルールを特定する(S1103)。図11に示す例では、権限判定処理部220は、サービス識別情報「住民所得情報取得サービス」に対応付けられている権限判定ルールの「必要権限レベル」として「REF」を特定する。また、サービス識別情報「住民基本情報取得サービス」に対応付けられている権限判定ルールの「ルールクラス」として「B」を特定する。   Next, the authority determination processing unit 220 refers to the authority determination rule definition file stored in the storage unit (S1102), and specifies the authority determination rule associated with the acquired service identification information (S1103). ). In the example illustrated in FIG. 11, the authority determination processing unit 220 identifies “REF” as the “required authority level” of the authority determination rule associated with the service identification information “resident income information acquisition service”. Also, “B” is specified as the “rule class” of the authority determination rule associated with the service identification information “resident basic information acquisition service”.

つぎに、権限判定処理部220は、格納部250に格納されている複数のルールクラスの中から、特定したルールクラス「B」を取得する(S1104)。そして、権限判定処理部220は、サービスインタフェース部210から取得したユーザ情報と、格納部250から取得したルールクラスとに基づいて、ユーザに与えられている「権限レベル」を特定する(S1105)。図11に示す例では、権限判定処理部220は、「△△課」の「次長」に与えられている「権限レベル」として「NON」を特定する。   Next, the authority determination processing unit 220 acquires the specified rule class “B” from the plurality of rule classes stored in the storage unit 250 (S1104). Then, the authority determination processing unit 220 identifies the “authority level” given to the user based on the user information acquired from the service interface unit 210 and the rule class acquired from the storage unit 250 (S1105). In the example illustrated in FIG. 11, the authority determination processing unit 220 identifies “NON” as the “authority level” given to the “next length” of “ΔΔ section”.

つぎに、権限判定処理部220は、特定した「必要権限レベル」と、特定した「権限レベル」とを比較することにより、権限を判定する(S1106)。図11に示す例では、権限判定処理部220は、特定した「権限レベル」である「NON」が、特定した「必要権限レベル」である「REF」未満であることから、権限がない、すなわち「△△課」の「次長」は、「住民所得情報取得サービス」を利用する権限がないと判定する。権限判定処理部220は、権限がないと判定した場合、権限判定処理の結果を示すValueObjectをサービスインタフェース部210へ送信する(S1107)。   Next, the authority determination processing unit 220 determines the authority by comparing the specified “required authority level” with the specified “authority level” (S1106). In the example illustrated in FIG. 11, the authority determination processing unit 220 has no authority because the identified “authority level” “NON” is less than the identified “required authority level” “REF”. The “deputy manager” of “△△ section” determines that he does not have the authority to use the “resident income information acquisition service”. When determining that there is no authority, the authority determination processing unit 220 transmits a ValueObject indicating the result of the authority determination process to the service interface unit 210 (S1107).

このように、本実施形態のデータ検索システム100によれば、複数のサービスのそれぞれに対して権限判定ルールを定義する。このため、複数のサービスのそれぞれに対して、サービス固有の権限判定処理をおこなうことができる。   Thus, according to the data search system 100 of this embodiment, the authority determination rule is defined for each of a plurality of services. For this reason, it is possible to perform a service-specific authority determination process for each of a plurality of services.

また、本実施形態のデータ検索システム100によれば、部署名、職位名などのユーザ属性レベルで、権限判定処理をおこなう。このため、複数のユーザIDに対する権限判定ルールの設定および変更を一括しておこなうことができる。   Further, according to the data search system 100 of the present embodiment, the authority determination process is performed at the user attribute level such as a department name and job title. For this reason, it is possible to collectively set and change authority determination rules for a plurality of user IDs.

また、本実施形態のデータ検索システム100によれば、権限判定ルール定義ファイルにより、権限判定ルールを一括して管理する。このため、サービスが追加された場合であっても、追加されたサービスに対する権限判定ルールの設定を容易におこなうことができる。   Further, according to the data search system 100 of the present embodiment, the authority determination rules are collectively managed by the authority determination rule definition file. For this reason, even when a service is added, the authority determination rule for the added service can be easily set.

図12は、フィルタ処理部240によるフィルタリング処理の一例を示す。まず、フィルタ処理部240は、検索処理部230から、ValueObjectを取得する(S1201)。取得したValueObjectには、サービス識別情報、ユーザ情報、および検索結果データが示されている。   FIG. 12 shows an example of filtering processing by the filter processing unit 240. First, the filter processing unit 240 acquires a ValueObject from the search processing unit 230 (S1201). In the acquired ValueObject, service identification information, user information, and search result data are shown.

図12に示す例では、取得したValueObjectには、サービス識別情報として「住民所得情報取得サービス」が示されている。また、ユーザ情報の部署名として、「△△課」が示されている。また、ユーザ情報の職位名として、「次長」が示されている。また、3つのデータ項目「性別」、「年齢」、および「氏名」を含む検索結果データが示されている。   In the example shown in FIG. 12, “Resident Income Information Acquisition Service” is shown as service identification information in the acquired ValueObject. In addition, “△△ section” is shown as the department name of the user information. In addition, “Deputy Director” is shown as the title of the user information. In addition, search result data including three data items “sex”, “age”, and “name” is shown.

つぎに、フィルタ処理部240は、格納部に格納されているサービス定義ファイルを参照することにより、取得したサービス識別情報に対応付けられているフィルタリング条件を特定する(S1202)。図12に示す例では、フィルタ処理部240は、サービス識別情報「住民所得情報取得サービス」に対応付けられているフィルタリング条件として「条件A」を特定する。   Next, the filter processing unit 240 identifies the filtering condition associated with the acquired service identification information by referring to the service definition file stored in the storage unit (S1202). In the example illustrated in FIG. 12, the filter processing unit 240 identifies “condition A” as the filtering condition associated with the service identification information “resident income information acquisition service”.

つぎに、フィルタ処理部240は、格納部250に格納されているフィルタリング条件定義ファイルを参照することにより(S1203)、特定したフィルタリング条件から、権限判定ルールを、取得した検索結果データのデータ項目ごとに特定する(S1204)。図12に示す例では、フィルタ処理部240は、フィルタリング条件「条件A」から、データ項目「性別」の「必要権限レベル」として「UPD」を特定する。また、データ項目「性別」の「ルールクラス」として「A」を特定する。   Next, the filter processing unit 240 refers to the filtering condition definition file stored in the storage unit 250 (S1203), and determines the authority determination rule from the specified filtering condition for each data item of the acquired search result data. (S1204). In the example illustrated in FIG. 12, the filter processing unit 240 identifies “UPD” as the “required authority level” of the data item “sex” from the filtering condition “condition A”. In addition, “A” is specified as the “rule class” of the data item “sex”.

また、データ項目「年齢」の「必要権限レベル」として「UPD」を特定する。また、データ項目「年齢」の「ルールクラス」として「B」を特定する。また、データ項目「氏名」の「必要権限レベル」として「REF」を特定する。また、データ項目「氏名」の「ルールクラス」として「B」を特定する。   Further, “UPD” is specified as the “required authority level” of the data item “age”. Further, “B” is specified as the “rule class” of the data item “age”. In addition, “REF” is specified as the “required authority level” of the data item “name”. Further, “B” is specified as the “rule class” of the data item “name”.

つぎに、フィルタ処理部240は、格納部250に格納されている複数のルールクラスの中から、特定したルールクラス「A」および「B」を取得する(S1205)。そして、フィルタ処理部240は、サービスインタフェース部210から取得したユーザ情報と、格納部250から取得したルールクラスとに基づいて、ユーザに与えられている「権限レベル」を、データ項目ごとに特定する(S1206)。   Next, the filter processing unit 240 acquires the specified rule classes “A” and “B” from the plurality of rule classes stored in the storage unit 250 (S1205). Then, the filter processing unit 240 identifies the “authority level” given to the user for each data item based on the user information acquired from the service interface unit 210 and the rule class acquired from the storage unit 250. (S1206).

図12に示す例では、フィルタ処理部240は、「△△課」の「次長」に与えられているデータ項目「性別」に対する「権限レベル」として「UPD」を特定する。また、フィルタ処理部240は、「△△課」の「次長」に与えられているデータ項目「年齢」に対する「権限レベル」として「REF」を特定する。また、フィルタ処理部240は、「△△課」の「次長」に与えられているデータ項目「氏名」に対する「権限レベル」として「REF」を特定する。   In the example illustrated in FIG. 12, the filter processing unit 240 identifies “UPD” as the “authority level” for the data item “sex” given to the “next length” of “ΔΔ section”. In addition, the filter processing unit 240 specifies “REF” as the “authority level” for the data item “age” given to the “next length” of “△△ section”. Further, the filter processing unit 240 specifies “REF” as the “authority level” for the data item “name” given to the “next manager” of “△△ section”.

つぎに、フィルタ処理部240は、データ項目ごとに、特定した「必要権限レベル」と、特定した「権限レベル」とを比較することにより、権限を判定する(S1207)。図12に示す例では、フィルタ処理部240は、データ項目「性別」に対して特定した「権限レベル」である「UPD」が、データ項目「性別」に対して特定した「必要権限レベル」である「UPD」以上であることから、権限がある、すなわち「△△課」の「次長」は、データ項目「性別」を参照する権限があると判定する。   Next, the filter processing unit 240 determines the authority for each data item by comparing the specified “required authority level” with the specified “authority level” (S1207). In the example illustrated in FIG. 12, the filter processing unit 240 uses the “required authority level” specified for the data item “sex” as “UPD”, which is the “authority level” specified for the data item “sex”. Since it is equal to or higher than a certain “UPD”, it is determined that there is an authority, that is, the “next length” of “△△ section” has the authority to refer to the data item “sex”.

また、フィルタ処理部240は、データ項目「年齢」に対して特定した「権限レベル」である「REF」が、データ項目「年齢」に対して特定した「必要権限レベル」である「UPD」未満であることから、権限がない、すなわち「△△課」の「次長」は、データ項目「年齢」を参照する権限がないと判定する。また、フィルタ処理部240は、データ項目「氏名」に対して特定した「権限レベル」である「REF」が、データ項目「氏名」に対して特定した「必要権限レベル」である「REF」以上であることから、権限がある、すなわち「△△課」の「次長」は、データ項目「氏名」を参照する権限があると判定する。   Further, the filter processing unit 240 has “REF”, which is the “authority level” specified for the data item “age”, less than “UPD”, which is the “necessary authority level” specified for the data item “age”. Therefore, it is determined that there is no authority, that is, the “next manager” of “△△ section” has no authority to refer to the data item “age”. Further, the filter processing unit 240 determines that “REF”, which is the “authority level” specified for the data item “name”, is equal to or higher than “REF”, which is the “necessary authority level” specified for the data item “name”. Therefore, it is determined that there is an authority, that is, the “next manager” of “△△ section” has the authority to refer to the data item “name”.

フィルタ処理部240は、取得した検索結果データから、権限判定処理によってユーザの権限が有ると判定されたデータ項目である「性別」および「氏名」のデータを抽出する。そして、フィルタ処理部240は、抽出したデータ、すなわちフィルタリング処理後の検索結果データが示されたValueObjectを検索処理部230へ送信する(S1208)。フィルタ処理部240は、フィルタリング処理後の検索結果データが示されたValueObjectを、権限判定処理部220またはサービスインタフェース部210へ送信してもよい。   The filter processing unit 240 extracts, from the acquired search result data, data of “sex” and “name” which are data items determined to have the user authority by the authority determination process. Then, the filter processing unit 240 transmits the extracted data, that is, the ValueObject indicating the search result data after the filtering process, to the search processing unit 230 (S1208). The filter processing unit 240 may transmit the ValueObject indicating the search result data after the filtering process to the authority determination processing unit 220 or the service interface unit 210.

このように、本実施形態のデータ検索システム100によれば、複数のサービスのそれぞれに対してデータ項目レベルで権限判定ルールを設定する。このため、複数のサービスのそれぞれに対して、データ項目レベルで、サービス固有のフィルタリング処理をおこなうことができる。   Thus, according to the data search system 100 of this embodiment, the authority determination rule is set at the data item level for each of a plurality of services. Therefore, service-specific filtering processing can be performed on each of a plurality of services at the data item level.

また、本実施形態のデータ検索システム100によれば、フィルタリング条件定義ファイルにより、フィルタリング条件およびデータ項目レベルでの権限判定ルールを一括して管理する。このため、データ項目が追加された場合であっても、追加されたデータ項目に対する権限判定ルールの設定を容易におこなうことができる。   Further, according to the data search system 100 of this embodiment, the filtering condition and the authority determination rule at the data item level are collectively managed by the filtering condition definition file. For this reason, even if a data item is added, the authority determination rule for the added data item can be easily set.

また、本実施形態のデータ検索システム100によれば、部署名、職位名などのユーザ属性レベルでデータ項目レベルのフィルタリング処理をおこなう。このため、複数のユーザIDに対するフィルタリング条件の設定および変更を一括しておこなうことができる。   Further, according to the data search system 100 of the present embodiment, the filtering process at the data item level is performed at the user attribute level such as the department name and the job title. For this reason, it is possible to collectively set and change filtering conditions for a plurality of user IDs.

また、本実施形態のデータ検索システム100によれば、フィルタリング処理をデータ検索システム100で集中しておこなう。このため、データ要求元およびデータ取得先のシステムは、フィルタリング処理を実装する必要がない。   Further, according to the data search system 100 of the present embodiment, the filtering process is concentrated on the data search system 100. For this reason, the data request source and data acquisition destination systems do not need to implement filtering processing.

また、本実施形態のデータ検索システム100によれば、検索処理部230によるデータ検索処理から独立して、フィルタ処理部240によるフィルタリング処理をおこなう。このため、検索処理部230は、データ取得先の通信接続方式に依存しない共通の仕組みでフィルタリング処理をおこなうことができる。   Further, according to the data search system 100 of the present embodiment, the filtering process by the filter processing unit 240 is performed independently of the data search process by the search processing unit 230. Therefore, the search processing unit 230 can perform the filtering process with a common mechanism that does not depend on the communication connection method of the data acquisition destination.

図13は、データ検索システム100のハードウェア構成の一例を示す。データ検索システム100は、ホスト・コントローラ1582により相互に接続されるCPU1505、RAM1520、グラフィック・コントローラ1575、および表示装置1580を有するCPU周辺部を備える。また、データ検索システム100は、I/O(入出力)コントローラ1584によりホスト・コントローラ1582に接続される通信I/F1530、ハードディスクドライブ1540、およびCD−ROMドライブ1560を有する入出力部を備える。さらに、データ検索システム100は、I/Oコントローラ1584に接続されるROM1510、FD(フレキシブルディスク)ドライブ1550、およびI/O(入出力)チップ1570を有するレガシー入出力部を備える。   FIG. 13 shows an example of the hardware configuration of the data search system 100. The data search system 100 includes a CPU peripheral unit having a CPU 1505, a RAM 1520, a graphic controller 1575, and a display device 1580 that are connected to each other by a host controller 1582. The data search system 100 also includes an input / output unit having a communication I / F 1530, a hard disk drive 1540, and a CD-ROM drive 1560 that are connected to a host controller 1582 by an I / O (input / output) controller 1584. The data search system 100 further includes a legacy input / output unit having a ROM 1510, an FD (flexible disk) drive 1550, and an I / O (input / output) chip 1570 connected to the I / O controller 1584.

ホスト・コントローラ1582は、RAM1520と、高転送レートでRAM1520をアクセスするCPU1505およびグラフィック・コントローラ1575とを接続する。CPU1505は、ROM1510およびRAM1520に格納されたプログラムに基づいて動作して、各部を制御する。グラフィック・コントローラ1575は、CPU1505等がRAM1520内に設けたフレーム・バッファ上に生成する画像データを取得して、表示装置1580上に表示させる。これに代えて、グラフィック・コントローラ1575は、CPU1505等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。   The host controller 1582 connects the RAM 1520 to the CPU 1505 and the graphic controller 1575 that access the RAM 1520 at a high transfer rate. The CPU 1505 operates based on programs stored in the ROM 1510 and the RAM 1520 to control each unit. The graphic controller 1575 acquires image data generated by the CPU 1505 or the like on a frame buffer provided in the RAM 1520 and displays the image data on the display device 1580. Alternatively, the graphic controller 1575 may include a frame buffer that stores image data generated by the CPU 1505 or the like.

I/Oコントローラ1584は、ホスト・コントローラ1582と、比較的高速な入出力装置である通信I/F1530、ハードディスクドライブ1540、CD−ROMドライブ1560を接続する。通信I/F1530は、ネットワークを介して外部1598と通信する。ハードディスクドライブ1540は、CPU1505が使用するプログラムおよびデータを格納する。CD−ROMドライブ1560は、CD−ROM1595からプログラムまたはデータを読み取り、RAM1520を介してハードディスクドライブ1540に提供する。   The I / O controller 1584 connects the host controller 1582 to the communication I / F 1530, the hard disk drive 1540, and the CD-ROM drive 1560, which are relatively high-speed input / output devices. The communication I / F 1530 communicates with an external 1598 via a network. The hard disk drive 1540 stores programs and data used by the CPU 1505. The CD-ROM drive 1560 reads a program or data from the CD-ROM 1595 and provides it to the hard disk drive 1540 via the RAM 1520.

また、I/Oコントローラ1584には、ROM1510と、FDドライブ1550、およびI/Oチップ1570の比較的低速な入出力装置とが接続される。ROM1510は、データ検索システム100の起動時にCPU1505が実行するブート・プログラム、データ検索システム100のハードウェアに依存するプログラム等を格納する。FDドライブ1550は、フレキシブルディスク1590からプログラムまたはデータを読み取り、RAM1520を介してハードディスクドライブ1540に提供する。I/Oチップ1570は、FDドライブ1550、たとえばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を接続する。   The I / O controller 1584 is connected to the ROM 1510, the FD drive 1550, and the relatively low-speed input / output device of the I / O chip 1570. The ROM 1510 stores a boot program executed by the CPU 1505 when the data retrieval system 100 is activated, a program depending on the hardware of the data retrieval system 100, and the like. The FD drive 1550 reads a program or data from the flexible disk 1590 and provides it to the hard disk drive 1540 via the RAM 1520. The I / O chip 1570 connects various input / output devices via the FD drive 1550, for example, a parallel port, a serial port, a keyboard port, a mouse port, and the like.

RAM1520を介してハードディスクドライブ1540に提供されるプログラムは、フレキシブルディスク1590、CD−ROM1595、またはICカード等の記録媒体に格納されて利用者によって提供される。プログラムは、記録媒体から読み出され、RAM1520を介してデータ検索システム100内のハードディスクドライブ1540にインストールされ、CPU1505において実行される。データ検索システム100にインストールされて実行されるプログラムは、CPU1505等に働きかけて、コンピュータを、図1から図12にかけて説明した、データ検索システム100が有する各機能部として機能させる。   A program provided to the hard disk drive 1540 via the RAM 1520 is stored in a recording medium such as the flexible disk 1590, the CD-ROM 1595, or an IC card and provided by the user. The program is read from the recording medium, installed in the hard disk drive 1540 in the data search system 100 via the RAM 1520, and executed by the CPU 1505. The program installed and executed in the data search system 100 works on the CPU 1505 or the like to cause the computer to function as each functional unit included in the data search system 100 described with reference to FIGS.

以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。   As mentioned above, although this invention was demonstrated using embodiment, the technical scope of this invention is not limited to the range as described in the said embodiment. It will be apparent to those skilled in the art that various modifications or improvements can be added to the above-described embodiment. It is apparent from the scope of the claims that the embodiments added with such changes or improvements can be included in the technical scope of the present invention.

実施形態に係る行政システム10の一例を示す。An example of the administrative system 10 which concerns on embodiment is shown. 実施形態に係るデータ検索システム100の機能構成例を示す。1 illustrates an example functional configuration of a data search system 100 according to an embodiment. 検索処理部230の機能構成例を示す。An example of a functional configuration of the search processing unit 230 is shown. 検索部310の機能構成例を示す。An example of a functional configuration of the search unit 310 is shown. データ検索システム100が受け付ける要求電文の一例を示す。An example of a request message received by the data search system 100 is shown. 格納部250が格納するサービス定義ファイルの一例を示す。An example of a service definition file stored in the storage unit 250 is shown. 検索部310によるデータ検索処理の一例を示す。An example of the data search process by the search part 310 is shown. 検索部310によるデータ検索処理の他の一例を示す。Another example of data search processing by the search unit 310 is shown. データ送信部426によるデータ送信処理の一例を示す。An example of the data transmission process by the data transmission part 426 is shown. 権限判定処理部220による権限判定処理の一例を示す。An example of authority determination processing by the authority determination processing unit 220 will be described. 権限判定処理部220による権限判定処理の他の一例を示す。Another example of authority determination processing by the authority determination processing unit 220 is shown. フィルタ処理部240によるフィルタリング処理の一例を示す。An example of the filtering process by the filter process part 240 is shown. データ検索システム100のハードウェア構成の一例を示す。2 shows an example of a hardware configuration of a data search system 100.

符号の説明Explanation of symbols

10 行政システム
100 データ検索システム
110 受給台帳システム
121 高齢者支援システム
122 生活保護システム
123 共通データベース
210 サービスインタフェース部
220 権限判定処理部
230 検索処理部
240 フィルタ処理部
250 格納部
310 検索部
322 事前固有処理実行部
324 カラム値生成部
328 事後固有処理実行部
400 データ検索処理特定部
402 サービス識別情報取得部
404 構成情報特定部
406 処理プログラム特定部
410 通信接続方式特定部
412 検索パラメータ取得部
414 検索問い合わせ文生成部
416 通信接続部
418 データ取得部
420 第1取得件数特定部
422 第2取得件数特定部
423 送信件数特定部
424 送信開始位置特定部
426 データ送信部
430 通信接続部
510 ヘッダー部
520 ボディ部
1505 CPU
1510 ROM
1520 RAM
1530 通信I/F
1540 ハードディスクドライブ
1550 FDドライブ
1560 CD−ROMドライブ
1570 I/Oチップ
1575 グラフィック・コントローラ
1580 表示装置
1582 ホスト・コントローラ
1584 I/Oコントローラ
1590 フレキシブルディスク
1595 CD−ROM
1598 外部
DESCRIPTION OF SYMBOLS 10 Administration system 100 Data search system 110 Receiving ledger system 121 Elderly person support system 122 Life protection system 123 Common database 210 Service interface part 220 Authority determination process part 230 Search process part 240 Filter process part 250 Storage part 310 Search part 322 Pre-specific process Execution unit 324 Column value generation unit 328 Post-specific processing execution unit 400 Data search processing specification unit 402 Service identification information acquisition unit 404 Configuration information specification unit 406 Processing program specification unit 410 Communication connection method specification unit 412 Search parameter acquisition unit 414 Search query statement Generation unit 416 Communication connection unit 418 Data acquisition unit 420 First acquisition number specifying unit 422 Second acquisition number specifying unit 423 Transmission number specifying unit 424 Transmission start position specifying unit 426 Data transmission 430 communication connection unit 510 the header portion 520 the body part 1505 CPU
1510 ROM
1520 RAM
1530 Communication I / F
1540 Hard disk drive 1550 FD drive 1560 CD-ROM drive 1570 I / O chip 1575 Graphic controller 1580 Display device 1582 Host controller 1584 I / O controller 1590 Flexible disk 1595 CD-ROM
1598 External

Claims (11)

データベースからデータを検索して提供する複数の情報検索サービスを提供する機能を有し、前記複数の情報検索サービスのうちデータの要求元のシステムであるデータ要求元システムが選択した情報検索サービスに応じてデータを前記データベースから検索するデータ検索システムであって、
前記データ要求元システムから送信された、前記データ要求元システムが選択した情報検索サービスを識別するためのサービス識別情報を取得するサービス識別情報取得部と、
前記データ要求元システムから送信された不要データ項目の識別情報を取得する検索パラメータ取得部と、
前記複数の情報検索サービスを識別するための複数のサービス識別情報のそれぞれに対する、検索問い合わせ文の構成情報の対応付けが示された定義情報を格納する格納部と、
前記格納部に格納されている前記定義情報を参照することにより、前記サービス識別情報取得部が取得した前記サービス識別情報に対応付けられている前記構成情報を特定する構成情報特定部と、
前記構成情報特定部が特定した前記構成情報を用いて、検索問い合わせ文を生成する検索問い合わせ文生成部と、
前記検索問い合わせ文生成部が生成した前記検索問い合わせ文により、前記データを取得するデータ取得部と、
前記データ取得部が取得した前記データを、前記データ要求元システムへ送信するデータ送信部と
を備え、
前記構成情報は、前記データベースからデータを取得するべきデータ取得対象のデータ項目と、当該データ取得対象のデータ項目のデータを要求元へ送信するか否かとを示す情報を含み、
前記検索問い合わせ文生成部は、前記構成情報特定部が特定した前記構成情報に含まれる情報で示される前記データ取得対象のデータ項目であって前記不要データ項目を含むデータ項目のデータを、前記データベースから検索するための検索問い合わせ文を生成し、
前記データ取得部は、前記検索問い合わせ文生成部が生成した前記検索問い合わせ文を前記データベースへ送信することにより前記データを前記データベースからデータを取得し、
前記データ送信部は、前記データ取得部が前記データベースから取得した前記データのうち、前記構成情報特定部が特定した前記構成情報に含まれる情報によって要求元へ送信する旨が示されているデータ項目であり、かつ、前記不要データ項目以外のデータ項目のデータを、前記データ要求元システムへ送信する
データ検索システム。
According to the information retrieval service selected by the data requesting system, which is a data requesting system among the plurality of information retrieving services, having a function of providing a plurality of information retrieving services that retrieve and provide data from a database data a data retrieval system for retrieving from said database Te,
Said data request sent from the source system, service identification information acquisition unit that acquires service identification information for the data requesting system to identify the selected information retrieval services,
A search parameter acquisition unit for acquiring identification information of unnecessary data items transmitted from the data request source system;
A storage unit that stores definition information in which a plurality of pieces of service identification information for identifying the plurality of information search services are associated with search query sentence configuration information;
A configuration information specifying unit that specifies the configuration information associated with the service identification information acquired by the service identification information acquisition unit by referring to the definition information stored in the storage unit;
A search query statement generating unit that generates a search query statement using the configuration information specified by the configuration information specifying unit;
A data acquisition unit that acquires the data by the search query statement generated by the search query statement generation unit;
A data transmission unit that transmits the data acquired by the data acquisition unit to the data requesting system ;
The configuration information includes information indicating a data item to be acquired from which data is to be acquired from the database, and whether to transmit data of the data item to be acquired to the request source.
The search query generator generates data items of data items including the unnecessary data items that are the data items to be acquired indicated by the information included in the configuration information specified by the configuration information specifying unit. Generate a search query to search from
The data acquisition unit acquires the data from the database by transmitting the search query statement generated by the search query statement generation unit to the database,
The data item indicating that the data transmitting unit transmits to the request source by information included in the configuration information specified by the configuration information specifying unit among the data acquired by the data acquiring unit from the database And a data search system for transmitting data of data items other than the unnecessary data items to the data requesting system.
前記サービス識別情報取得部が取得した前記サービス識別情報に対応付けられているデータの取得件数を特定する第1取得件数特定部と、  A first acquisition number specifying unit for specifying the number of acquisitions of data associated with the service identification information acquired by the service identification information acquisition unit;
前記データ要求元システムが要求する、データの取得件数を特定する第2取得件数特定部と  A second acquisition number specifying part for specifying the number of data acquisitions requested by the data requesting system;
をさらに備え、Further comprising
前記データ取得部は、前記第2取得件数特定部が特定した取得件数が、前記第1取得件数特定部が特定した取得件数よりも少ない場合は、前記第2取得件数特定部が特定した取得件数を上限として、前記検索問い合わせ文生成部が生成した前記検索問い合わせ文により検索されるデータを前記データベースから取得する  When the number of acquisitions specified by the second acquisition number specifying unit is smaller than the number of acquisitions specified by the first acquisition number specifying unit, the data acquisition unit specifies the number of acquisitions specified by the second acquisition number specifying unit. The search query statement generated by the search query statement generation unit is retrieved from the database with the upper limit of
請求項1に記載のデータ検索システム。The data search system according to claim 1.
データベースからデータを検索して提供する複数の情報検索サービスを提供する機能を有し、前記複数の情報検索サービスのうちデータの要求元のシステムであるデータ要求元システムが選択した情報検索サービスに応じてデータを前記データベースから検索するデータ検索システムであって、  According to the information retrieval service selected by the data requesting system, which is a data requesting system among the plurality of information retrieving services, having a function of providing a plurality of information retrieving services that retrieve and provide data from a database A data retrieval system for retrieving data from the database,
前記データ要求元システムから送信された、前記データ要求元システムが選択した情報検索サービスを識別するためのサービス識別情報を取得するサービス識別情報取得部と、  A service identification information acquisition unit for acquiring service identification information transmitted from the data request source system for identifying the information search service selected by the data request source system;
前記サービス識別情報取得部が取得した前記サービス識別情報に対応付けられているデータの取得件数を特定する第1取得件数特定部と、  A first acquisition number specifying unit for specifying the number of acquisitions of data associated with the service identification information acquired by the service identification information acquisition unit;
前記データ要求元システムが要求する、データの取得件数を特定する第2取得件数特定部と、  A second acquisition number specifying unit for specifying the number of data acquisitions requested by the data requesting system;
前記複数の情報検索サービスを識別するための複数のサービス識別情報のそれぞれに対する、検索問い合わせ文の構成情報の対応付けが示された定義情報を格納する格納部と、  A storage unit that stores definition information in which a plurality of pieces of service identification information for identifying the plurality of information search services are associated with search query sentence configuration information;
前記格納部に格納されている前記定義情報を参照することにより、前記サービス識別情報取得部が取得した前記サービス識別情報に対応付けられている前記構成情報を特定する構成情報特定部と、  A configuration information specifying unit that specifies the configuration information associated with the service identification information acquired by the service identification information acquisition unit by referring to the definition information stored in the storage unit;
前記構成情報特定部が特定した前記構成情報を用いて、検索問い合わせ文を生成する検索問い合わせ文生成部と、  A search query statement generating unit that generates a search query statement using the configuration information specified by the configuration information specifying unit;
前記検索問い合わせ文生成部が生成した前記検索問い合わせ文により、前記データを取得するデータ取得部と、  A data acquisition unit that acquires the data by the search query statement generated by the search query statement generation unit;
前記データ取得部が取得した前記データを、前記データ要求元システムへ送信するデータ送信部と  A data transmission unit that transmits the data acquired by the data acquisition unit to the data requesting system;
を備え、With
前記データ取得部は、前記第2取得件数特定部が特定した取得件数が、前記第1取得件数特定部が特定した取得件数よりも少ない場合は、前記第2取得件数特定部が特定した取得件数を上限として、前記検索問い合わせ文生成部が生成した前記検索問い合わせ文により検索されるデータを前記データベースから取得し、  When the number of acquisitions specified by the second acquisition number specifying unit is smaller than the number of acquisitions specified by the first acquisition number specifying unit, the data acquisition unit specifies the number of acquisitions specified by the second acquisition number specifying unit. Is acquired from the database, the data searched by the search query sentence generated by the search query sentence generation unit,
前記構成情報は、前記データベースからデータを取得するべきデータ取得対象のデータ項目と、当該データ取得対象のデータ項目のデータを要求元へ送信するか否かとを示す情報を含み、  The configuration information includes information indicating a data item to be acquired from which data is to be acquired from the database, and whether to transmit data of the data item to be acquired to the request source.
前記検索問い合わせ文生成部は、前記構成情報特定部が特定した前記構成情報に含まれる情報で示される前記データ取得対象のデータ項目のデータを、前記データベースから検索するための検索問い合わせ文を生成し、  The search query statement generation unit generates a search query statement for searching the database for data of the data item to be acquired indicated by the information included in the configuration information specified by the configuration information specifying unit. ,
前記データ取得部は、前記検索問い合わせ文生成部が生成した前記検索問い合わせ文を前記データベースへ送信することにより前記データを前記データベースからデータを取得し、  The data acquisition unit acquires the data from the database by transmitting the search query statement generated by the search query statement generation unit to the database,
前記データ送信部は、前記データ取得部が前記データベースから取得した前記データのうち、前記構成情報特定部が特定した前記構成情報に含まれる情報によって要求元へ送信する旨が示されているデータ項目のデータを、前記データ要求元システムへ送信する  The data item indicating that the data transmitting unit transmits to the request source by information included in the configuration information specified by the configuration information specifying unit among the data acquired by the data acquiring unit from the database Is sent to the data requesting system.
データ検索システム。Data retrieval system.
前記データ要求元システムが要求する、データの送信件数を特定する送信件数特定部と、  A transmission number specifying unit for specifying the number of data transmissions requested by the data requesting system;
前記データ要求元システムが要求する、データの送信開始位置を特定する送信開始位置特定部と、  A transmission start position specifying unit for specifying a data transmission start position requested by the data requesting system;
をさらに備え、Further comprising
前記データ取得部は、前記第1取得件数特定部が特定した取得件数および前記第2取得件数特定部が特定した取得件数の少ない方の取得件数のデータを、前記データベースから取得することを許可し、  The data acquisition unit permits the acquisition of data from the database, the number of acquisitions specified by the first acquisition number specifying unit and the acquisition number of the acquisitions having a smaller number of acquisitions specified by the second acquisition number specifying unit. ,
前記データ送信部は、前記送信開始位置特定部が特定した前記送信開始位置および前記送信件数特定部が特定した前記送信件数によって示されるデータの位置が、前記許可された取得件数の範囲を超えない場合に、前記データ取得部が前記データベースから取得した前記送信開始位置から前記送信件数のデータを、前記データ要求元システムへ送信する  In the data transmission unit, the position of data indicated by the transmission start position specified by the transmission start position specifying unit and the number of transmissions specified by the transmission number specifying unit does not exceed the range of the permitted number of acquisitions. In this case, the data acquisition unit transmits the transmission count data from the transmission start position acquired from the database to the data request source system.
請求項2または3に記載のデータ検索システム。The data search system according to claim 2 or 3.
前記データ要求元システムへ送信されるデータに対して、データ項目単位でのフィルタリング処理を行うフィルタ処理部
をさらに備え、
前記定義情報はさらに、前記複数のサービス識別情報のそれぞれに対する、前記フィルタ処理部による前記フィルタリング処理に用いられるフィルタリング条件の対応付けを示し、
前記フィルタ処理部は、前記格納部に格納されている前記定義情報を参照することにより、前記サービス識別情報取得部が取得した前記サービス識別情報に対応付けられている前記フィルタリング条件で前記フィルタリング処理を行う
請求項1から4のいずれか一項に記載のデータ検索システム。
A filter processing unit that performs a filtering process in units of data items on the data transmitted to the data requesting system ,
The definition information further indicates an association of filtering conditions used for the filtering process by the filter processing unit with respect to each of the plurality of service identification information,
The filter processing unit refers to the definition information stored in the storage unit, and performs the filtering process with the filtering condition associated with the service identification information acquired by the service identification information acquisition unit. The data search system according to claim 1, wherein the data search system is performed.
前記検索問い合わせ文生成部は、前記構成情報特定部が特定した前記構成情報を用いて、前記検索問い合わせ文としてSQL文を生成する
請求項1から5のいずれか一項に記載のデータ検索システム。
The search query statement generation unit uses the configuration information the configuration information identifying unit has identified, the data search system according to claim 1, any one of 5 to generate the SQL statement as the search query statement.
前記データ要求元システムから送信された絞込み条件を取得する検索パラメータ取得部
をさらに備え、
前記検索問い合わせ文生成部は、前記検索パラメータ取得部が取得した前記絞込み条件および前記構成情報特定部が特定した前記構成情報を用いて、前記絞込み条件に合致する前記データを前記データベースから取得するための前記検索問い合わせ文を生成する
請求項2から4のいずれか一項に記載のデータ検索システム。
Search parameter acquisition unit for acquiring narrowing-down conditions transmitted from the data request source system
Further comprising
The search query statement generation unit uses the narrowing condition acquired by the search parameter acquisition unit and the configuration information specified by the configuration information specifying unit to acquire the data that matches the narrowing condition from the database. The data search system according to any one of claims 2 to 4 , wherein the search query statement is generated.
前記検索パラメータ取得部は、前記データ要求元システムから送信されたソート条件をさらに取得し、
前記検索問い合わせ文生成部は、前記ソート条件に従ってソートされた前記データを前記データベースから取得するための前記検索問い合わせ文を生成する
請求項に記載のデータ検索システム。
The search parameter acquisition unit further acquires a sort condition transmitted from the data request source system ,
The data search system according to claim 7 , wherein the search query statement generation unit generates the search query statement for acquiring the data sorted according to the sort condition from the database.
請求項1からのいずれか一項に記載のデータ検索システムと、
前記データ要求元システムが備える端末装置と
を備え、
前記端末装置は、前記複数の情報検索サービスの中から選択した情報検索サービスを識別するためのサービス識別情報を含む要求電文を送信し、
前記データ検索システムは、前記端末装置へ送信するデータを応答電文で前記端末装置へ送信する
システム。
The data search system according to any one of claims 1 to 8 ,
A terminal device provided in the data request source system ,
The terminal device transmits a request message including service identification information for identifying an information search service selected from the plurality of information search services;
The data search system is a system for transmitting data to be transmitted to the terminal device to the terminal device by a response message.
コンピュータを、請求項1からのいずれか一項に記載のデータ検索システムとして機能させるためのプログラム。 The program for functioning a computer as a data search system as described in any one of Claims 1-8 . データベースからデータを検索して提供する複数の情報検索サービスを提供する機能を有するデータ検索システムが、前記複数の情報検索サービスのうちデータの要求元のシステムであるデータ要求元システムが選択した情報検索サービスに応じてデータを前記データベースから検索するデータ検索方法であって、
前記データ検索システムが備える格納部が、前記複数の情報検索サービスを識別するための複数のサービス識別情報のそれぞれに対する、検索問い合わせ文の構成情報の対応付けが示された定義情報を格納する格納段階と、
前記データ検索システムが備えるサービス識別情報取得部が、前記データ要求元システムから送信された、前記データ要求元システムが選択した前記情報検索サービスを識別するためのサービス識別情報を取得するサービス識別情報取得段階と、
前記データ検索システムが備える検索パラメータ取得部が、前記データ要求元システムから送信された不要データ項目の識別情報を取得する検索パラメータ取得段階と、
前記データ検索システムが備える構成情報特定部が、前記格納部に格納されている前記定義情報を参照することにより、前記サービス識別情報取得部が取得した前記サービス識別情報に対応付けられている前記構成情報を特定する構成情報特定段階と、
前記データ検索システムが備える検索問い合わせ文生成部が、前記構成情報特定部が特定した前記構成情報を用いて、検索問い合わせ文を生成する検索問い合わせ文生成段階と、
前記データ検索システムが備えるデータ取得部が、前記検索問い合わせ文生成部が生成した前記検索問い合わせ文により、前記データを取得するデータ取得段階と、
前記データ検索システムが備えるデータ送信部が、前記データ取得部が取得した前記データを、前記データ要求元システムへ送信するデータ送信段階と
を備え、
前記構成情報は、前記データベースからデータを取得するべきデータ取得対象のデータ項目と、当該データ取得対象のデータ項目のデータを要求元へ送信するか否かとを示す情報を含み、
前記検索問い合わせ文生成段階において、前記検索問い合わせ文生成部は、前記構成情報特定部が特定した前記構成情報に含まれる情報で示される前記データ取得対象のデータ項目であって前記不要データ項目を含むデータ項目のデータを、前記データベースから検索するための検索問い合わせ文を生成し、
前記データ取得段階において、前記データ取得部は、前記検索問い合わせ文生成部が生成した前記検索問い合わせ文を前記データベースへ送信することにより前記データベースからデータを取得し、
前記データ送信段階において、前記データ送信部は、前記データ取得部が前記データベースから取得した前記データのうち、前記構成情報特定部が特定した前記構成情報に含まれる情報によって要求元へ送信する旨が示されているデータ項目であり、かつ、前記不要データ項目以外のデータ項目のデータを、前記データ要求元システムへ送信する
データ検索方法。
A data search system having a function of providing a plurality of information search services that search and provide data from a database selects an information search selected by a data request source system that is a data request source system among the plurality of information search services a data retrieval method for retrieving data from the database according to the service,
A storage stage in which the storage unit included in the data search system stores definition information indicating a correspondence of configuration information of a search query statement to each of a plurality of service identification information for identifying the plurality of information search services When,
Service identification information acquisition unit for acquiring service identification information for identifying the information search service selected by the data request source system , transmitted from the data request source system , by a service identification information acquisition unit included in the data search system Stages,
A search parameter acquisition unit provided in the data search system acquires a search parameter acquisition step of acquiring identification information of unnecessary data items transmitted from the data request source system,
The configuration associated with the service identification information acquired by the service identification information acquisition unit by referring to the definition information stored in the storage unit by a configuration information specifying unit included in the data search system A configuration information identification stage for identifying information;
A search query statement generating unit provided in the data search system uses the configuration information specified by the configuration information specifying unit to generate a search query statement, and
A data acquisition stage provided in the data search system, the data acquisition step of acquiring the data by the search query sentence generated by the search query sentence generation unit;
A data transmission unit included in the data search system includes a data transmission step of transmitting the data acquired by the data acquisition unit to the data request source system ;
The configuration information includes information indicating a data item to be acquired from which data is to be acquired from the database, and whether to transmit data of the data item to be acquired to the request source.
In the search query statement generation stage, the search query statement generation unit includes the unnecessary data item that is the data item to be acquired indicated by the information included in the configuration information specified by the configuration information specifying unit. Generating a search query for searching the data of the data item from the database;
In the data acquisition step, the data acquisition unit acquires data from the database by transmitting the search query statement generated by the search query statement generation unit to the database,
In the data transmission step, the data transmission unit may transmit to the request source by information included in the configuration information specified by the configuration information specifying unit among the data acquired by the data acquisition unit from the database. A data search method for transmitting data of a data item other than the unnecessary data item to the data request source system.
JP2008092631A 2008-03-31 2008-03-31 Data search system, system, program, and data search method Active JP5320637B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008092631A JP5320637B2 (en) 2008-03-31 2008-03-31 Data search system, system, program, and data search method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008092631A JP5320637B2 (en) 2008-03-31 2008-03-31 Data search system, system, program, and data search method

Publications (2)

Publication Number Publication Date
JP2009245282A JP2009245282A (en) 2009-10-22
JP5320637B2 true JP5320637B2 (en) 2013-10-23

Family

ID=41307078

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008092631A Active JP5320637B2 (en) 2008-03-31 2008-03-31 Data search system, system, program, and data search method

Country Status (1)

Country Link
JP (1) JP5320637B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130132372A1 (en) * 2011-11-17 2013-05-23 Benefitfocus.Com Systems and methods for dynamic service integration
JP5916974B1 (en) * 2014-11-19 2016-05-11 株式会社インフォメックス Data search device, program, and recording medium
EP3171282A4 (en) 2014-11-19 2017-12-06 Informex Inc. Data retrieval apparatus, program and recording medium
CN112015771B (en) * 2020-10-15 2021-06-29 北京新唐思创教育科技有限公司 Data retrieval method and device, electronic equipment and computer storage medium
KR20220055151A (en) * 2020-10-26 2022-05-03 삼성에스디에스 주식회사 Method for generating identification id, and apparatus implementing the same method

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001142885A (en) * 1999-11-12 2001-05-25 Hitachi Ltd Inquiry sql generator by job name designation
JP2004126680A (en) * 2002-09-30 2004-04-22 Fujitsu Ltd Sql masking type database access method and computer program
JP4109988B2 (en) * 2002-12-27 2008-07-02 キヤノンマーケティングジャパン株式会社 Database search apparatus, database search method, program, and computer-readable recording medium
JP3892825B2 (en) * 2003-05-23 2007-03-14 株式会社東芝 Database search support system and database search support method
JP5430819B2 (en) * 2003-08-28 2014-03-05 インターナショナル・ビジネス・マシーンズ・コーポレーション Database system, information acquisition availability inspection system, information acquisition method, and program
JP4429082B2 (en) * 2004-06-02 2010-03-10 富士通株式会社 Session management method and apparatus
JP2006004274A (en) * 2004-06-18 2006-01-05 Nippon Telegr & Teleph Corp <Ntt> Interactive processing device, interactive processing method, and interactive processing program
KR100795929B1 (en) * 2005-09-29 2008-01-21 엔에이치엔(주) Method and system for transmitting defined-query to database

Also Published As

Publication number Publication date
JP2009245282A (en) 2009-10-22

Similar Documents

Publication Publication Date Title
JP4739455B2 (en) Document management method
US8352396B2 (en) Systems and methods for improving web site user experience
US9703885B2 (en) Systems and methods for managing content variations in content delivery cache
RU2380748C2 (en) Registration and receiving information about database table change which can be used to invalidate cache elements
JP4660475B2 (en) User profile management system
CN100478944C (en) Automatic task generator method and system
JP5509596B2 (en) Data management device
KR100737300B1 (en) Intelligent Use of User Data to Pre-emptively Prevent Execution of a Query Violating Access Controls
JP2010518467A (en) How to integrate an enterprise search system with a custom access control application programming interface
JP2010026653A (en) Data access control method, data access control apparatus, and program
JP2006505062A (en) How to achieve security for your data
JP5320637B2 (en) Data search system, system, program, and data search method
CN111046041B (en) Data processing method and device, storage medium and processor
US11176044B2 (en) Systems and methods for implementing overlapping data caching for object application program interfaces
JP2009037501A (en) Information retrieval apparatus, information retrieval method and program
CN112597486A (en) Method for preventing repeated access to Restful API based on Spring
JP5322019B2 (en) Predictive caching method for caching related information in advance, system thereof and program thereof
JP5156935B2 (en) Data search system, system, program, and data search method
JP5283600B2 (en) Information search program, information search system
JP2009245283A (en) Data retrieval system, data retrieval method, and program
KR100658299B1 (en) Method for monitoring telecommunication network performance based on web corresponding to change database structure
JP2002175327A (en) Method for managing database
JP5354208B2 (en) Default value setting system and default value setting method
Rasool et al. Poster: Rql: rest query language for converting firebase to a mobile cloud computing platform
JP4550876B2 (en) Structured document retrieval system and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100401

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20120330

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20120330

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20120330

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120627

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120710

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120827

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130329

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: 20130618

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130628

R150 Certificate of patent or registration of utility model

Ref document number: 5320637

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250