JP2011258101A - Information utilization system - Google Patents

Information utilization system Download PDF

Info

Publication number
JP2011258101A
JP2011258101A JP2010133730A JP2010133730A JP2011258101A JP 2011258101 A JP2011258101 A JP 2011258101A JP 2010133730 A JP2010133730 A JP 2010133730A JP 2010133730 A JP2010133730 A JP 2010133730A JP 2011258101 A JP2011258101 A JP 2011258101A
Authority
JP
Japan
Prior art keywords
api
data
user
database
apic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2010133730A
Other languages
Japanese (ja)
Inventor
Tetsuo Kamei
哲夫 亀井
Tatsuya Kamei
達也 亀井
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to JP2010133730A priority Critical patent/JP2011258101A/en
Publication of JP2011258101A publication Critical patent/JP2011258101A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

PROBLEM TO BE SOLVED: To dramatically improve effective utilization of data and programs possessed by many general users.SOLUTION: Only by registering data possessed by many general users by themselves in a server as master data, the registered data of the general users is put onto a database, which is made as an API so as to be enabled to be input/output as necessary by automatic API creation means 12 and 32. The database as the API is disclosed on a network so that a third party can access or use the database easily. In this way, an information utilization system intends to spread information by allowing development users and website managers to use data further widely that was originally to be kept only by general users.

Description

本発明は、ユーザーが保有しているデータを第三者が容易に閲覧又は利用可能とするようにした情報利用システムに関する。   The present invention relates to an information utilization system that allows a third party to easily browse or use data held by a user.

近年、インターネット経由で情報を利用することが多くの分野において広がりつつあるが、企業や個人で保有しているデータやプログラムをウェブサイトで広く利用可能とするためには、それらのデータやプログラムをAPI(Application Program Interface)化して公開されていることが望ましい。データやプログラムをAPI化したウェブAIPが公開されていれば、有用で高機能なコンテンツがインターネット経由で容易に取得されることとなる。   In recent years, the use of information via the Internet is spreading in many fields, but in order to make data and programs owned by companies and individuals widely available on websites, such data and programs must be It is desirable that it is made public as an API (Application Program Interface). If a web AIP in which data and programs are converted into APIs is published, useful and highly functional content can be easily acquired via the Internet.

例えば、グルメサイトでレストラン情報、地図サイトで地図情報、交通情報サイトで時刻情報、というように複数のサイトに分散されていた関連情報が、それぞれのサイトにおいてウェブAPIを使用して公開されていれば、別のサイト運営者側からの提供要求に対して容易に対応することが可能となるため、マッシュアップ・サイト等の統合ウェブページでは、各サイトの情報を一つのウェブページで利用可能とし、ウェブページの利便性を高めるようにしている。   For example, related information that has been distributed to multiple sites, such as restaurant information at a gourmet site, map information at a map site, and time information at a traffic information site, is published on each site using a web API. For example, since it is possible to easily respond to a request from another site operator, information on each site can be used on a single web page on an integrated web page such as a mashup site. , To improve the convenience of web pages.

しかしながら、元のデータであるマスタデータを集めるには、ユーザーを集めるためのサイトを立ち上げてデータを投稿してもらうという膨大な作業が必要となる。また、ウェブAPIを公開するためには、例えばサーバー内にデータベースを構築して自分のマスタデータに合うテーブルを特定の操作言語で作成したり、自作のプログラムを設置してプログラムを実行させるためのファイルを設定したり、マスタデータの検索機能を設定するなどの作業を行わねばならないし、プログラムに対する入出力などの技術的知識も必要となる。このようにデータやプログラムのAPI化には、高度な技術知識と手間がかかることから利用の範囲が限定されており、特に、一般多数のユーザーが保有しているデータやプログラムを有効利用することができなくなっているのが現状である。   However, collecting the master data, which is the original data, requires an enormous amount of work by setting up a site for collecting users and posting the data. In addition, in order to publish a web API, for example, a database is built in the server and a table suitable for the master data is created in a specific operation language, or a self-made program is installed to execute the program. Work such as setting a file and setting a master data search function must be performed, and technical knowledge such as input / output to the program is also required. In this way, the use of APIs for data and programs is limited in scope because it requires advanced technical knowledge and labor, and in particular, effective use of data and programs owned by many general users. The current situation is that it is no longer possible.

特開2002−55819号公報JP 2002-55819 A 特開2002−223186号公報JP 2002-223186 A 特開2001−306417号公報JP 2001-306417 A

以上の問題点に鑑みて本発明は、多数の一般ユーザーが保有しているデータやプログラムを有効的に利用して活用することができるようにした情報利用システムを提供することを目的とする。   In view of the above problems, an object of the present invention is to provide an information utilization system that can effectively utilize and utilize data and programs held by a large number of general users.

上記目的を達成するため本発明は、ユーザーによりサーバー内に入力されたマスタデータを第三者に閲覧又は利用可能な状態でアクセス可能とするAPIを設計・公開する自動API生成手段を備えたものであって、前記自動API生成手段は、入力と出力との間における処理内容を前記ユーザーに提示してAPI仕様を決定するAPI仕様決定機能と、その決定されたAPI仕様に基づいてデータベースを自動で作成するデータベース作成機能と、データの全部又は一部をネットワーク上に公開するAPI発信機能と、を備えた構成になされている。   In order to achieve the above object, the present invention comprises an automatic API generation means for designing and publishing an API that makes it possible for a third party to access or use master data input into a server by a user. The automatic API generation means automatically presents the processing contents between input and output to the user and determines an API specification, and automatically creates a database based on the determined API specification. The database creation function created in the above and the API transmission function for publishing all or part of the data on the network are configured.

このような構成を有する本発明によれば、多数の一般ユーザーが自身で保有しているデータが、自動API生成手段のAPI仕様決定機能とデータベース作成機能とを利用して容易にAPI化されるとともに、第三者による閲覧又は利用が容易なデータ又はプログラムとしてネットワーク上に公開される。従って、元々は一般ユーザーの手元に秘蔵されようとしていたデータが、開発ユーザーやサイト運営者によって容易かつ広範囲に利用されることとなり、情報の拡散が飛躍的に図られるようになっている。   According to the present invention having such a configuration, data owned by a large number of general users can be easily converted to an API using the API specification determination function and the database creation function of the automatic API generation means. At the same time, it is released on the network as data or programs that can be easily viewed or used by a third party. Therefore, data originally intended to be kept in the hands of general users can be easily and widely used by development users and site operators, and the spread of information has been dramatically improved.

また本発明においては、前記自動API生成手段によりAPI化して作成されたデータを閲覧又は利用したユーザーに対して、そのユーザーが閲覧又は利用したデータの内容に対応した内容の広告を配信する広告配信手段を備えることが可能である。   Further, in the present invention, an advertisement distribution that distributes an advertisement corresponding to the content of the data viewed or used by the user to the user who viewed or used the data created by converting into an API by the automatic API generation means. Means may be provided.

このような構成を有する本発明によれば、特定の情報を必要としているユーザーに対して、当該ユーザーが必要としている情報に対応した内容の広告が配信されることとなり、広告配信者にとっては無駄な広告配信が低減され、ユーザーにとっても必要な情報がさらに得られることとなる。   According to the present invention having such a configuration, an advertisement having a content corresponding to information required by the user is distributed to a user who needs specific information, which is useless for the advertisement distributor. Advertisement distribution is reduced, and necessary information for the user can be further obtained.

また本発明においては、前記自動API生成手段により作成されたAPI仕様やデータベースの閲覧又は利用の頻度に対応して、そのAPI仕様やデータベースの設計者又当該データベースのデータ提供者への対価を決定する利用者還元手段を備えることが可能である。   Further, in the present invention, in accordance with the frequency of browsing or using the API specification or database created by the automatic API generation means, the consideration to the API specification or database designer or data provider of the database is determined. It is possible to provide user return means.

このような構成を有する本発明によれば、閲覧又は利用の頻度が高いデータを提供したユーザー又はAPI仕様やデータベースの設計者に対して、提供したAPI仕様やデータベース設計やデータの閲覧又は利用の頻度に対応した対価が支払われることとなり、一般ユーザーから、より利用度の高い価値あるデータがより多く提供されることとなる。   According to the present invention having such a configuration, a user or an API specification or database designer who has provided data that is frequently viewed or used can be used to view or use the provided API specification or database design or data. Consideration corresponding to the frequency will be paid, and more valuable data with higher utilization will be provided from general users.

また本発明においては、利用者還元手段を利用するものであって、個々のユーザーが所有する個別のマスタデータを適宜に集合させるようにAPI設計・公開し、そのAPI化した各データ集合体をネットワーク上で公開して流通可能とする一方、それらの各データ集合体に対する対価を前記利用者還元手段を用いて決定する構成を備えることが可能である。そして、このときのデータ集合体は、メタデータ、テンプレート、又はマッシュアップソフトウェアとすることが可能である。   Further, in the present invention, the user return means is used, and API design / publication is performed so that individual master data owned by each user is appropriately gathered, and each of the data aggregates converted into the API is stored. While making it publicly available on the network and allowing it to be distributed, it is possible to provide a configuration in which the consideration for each of these data aggregates is determined using the user return means. The data aggregate at this time can be metadata, a template, or mashup software.

このような構成を有する本発明によれば、テンプレート等を一単位としたデータ集合体の売買が可能となるため、各データ集合体を受け渡す種々の段階において多様な収益性が設定可能となる。   According to the present invention having such a configuration, since it is possible to buy and sell data aggregates using a template or the like as a unit, various profitability can be set at various stages of delivering each data aggregate. .

以上のように本発明は、多数の一般ユーザーが自身で保有しているデータをサーバー内にマスタデータとして登録するだけで、その登録された一般ユーザーのデータが適宜の出力状態となるように自動API生成手段により設計・生成・公開されるAPIによって、データを第三者が容易に閲覧又は利用可能となるようにネットワーク上に公開し、元々一般ユーザーの手元に秘蔵されようとしていたデータを開発ユーザーやサイト運営者により広範囲に利用可能として情報の拡散を図るように構成したものであるから、多数の一般ユーザーが保有しているデータやプログラムの有効利用が飛躍的に高められることとなり、ウェブページの利便性等が大幅に向上されることから、従来のような複数サイトに対するユーザーの投稿などの社会的無駄をなくすことができる。さらに、ネット接続可能な家電製品等による利用が容易になることから、将来の例えばユビキタス社会に対する貢献も可能となるとともに、例えば決済機能を有するシステムを構築しておけば、API化されたデータや、それを利用して作成されたツール及びプログラム等を、売買サイトなどを介在した電子商取引を実現することもでき、API利用の拡大をさらに図ることができる。   As described above, the present invention automatically registers data stored by a large number of general users as master data in the server so that the registered general user data is in an appropriate output state. The API designed, generated and published by the API generation means makes the data public on the network so that it can be easily viewed or used by a third party, and the data originally intended to be stored in the hands of general users is developed. Since it is designed to spread the information so that it can be used widely by users and publishers, the effective use of data and programs owned by many general users will be dramatically improved. The convenience of the page is greatly improved, so there is no social contribution such as user posting to multiple sites as before. It can be eliminated. Furthermore, since it is easy to use with home-applicable home appliances and the like, it will be possible to contribute to the future ubiquitous society, for example, if a system having a payment function is constructed, In addition, it is possible to realize electronic commerce through a trading site or the like by using tools and programs created by using the tool, and it is possible to further increase the use of the API.

本発明の一実施形態における情報利用システムを利用したネットワーク構成を表したブロック図である。It is a block diagram showing the network structure using the information utilization system in one Embodiment of this invention. 図1に表された情報利用システムに用いられているAPI作成サーバーのハード構成の概略を表したブロック図である。It is a block diagram showing the outline of the hardware constitutions of the API production server used for the information utilization system represented by FIG. 図1に表された情報利用システムに用いられているAPI作成サーバーによるデータ集合体の動きを表したブロック図である。FIG. 2 is a block diagram showing the movement of a data aggregate by an API creation server used in the information use system shown in FIG. 1. 図1及び図3に表された情報利用システムの具体的構成を表したブロック図である。FIG. 4 is a block diagram showing a specific configuration of the information use system shown in FIGS. 1 and 3. 図1及び図3に表された情報利用システムを用いたデータ集合体のAPI化及び公開の全体手順を表したフロー図である。FIG. 4 is a flowchart showing an overall procedure for converting and publicizing a data aggregate using the information utilization system shown in FIGS. 1 and 3. API基本事項に関する入力画面の一例を表した模式図である。It is the model showing an example of the input screen regarding API basic matter. API入出力パラメータに関する入力画面の一例を表した模式図である。It is the model showing an example of the input screen regarding an API input / output parameter. API処理内容に関する入力画面の一例を表した模式図である。It is the schematic diagram showing an example of the input screen regarding API processing content. 既存テーブルへのデータ保存を指定する処理仕様入力画面の一例を表した模式図である。It is the schematic diagram showing an example of the process specification input screen which designates the data preservation | save to the existing table. 既存テーブルからデータ抽出を指定する処理仕様入力画面の一例を表した模式図である。It is the schematic diagram showing an example of the process specification input screen which designates data extraction from the existing table. APICによる自動デーブル作成によるデータ保存を指定する処理仕様入力画面の一例を表した模式図である。It is the model showing an example of the process specification input screen which designates the data preservation | save by automatic table creation by APIC. 自動デーブル作成によるデータ抽出を指定する処理仕様入力画面の一例を表した模式図である。It is the schematic diagram showing an example of the process specification input screen which designates the data extraction by automatic table creation. 構造体を定義する機能画面の一例を表した模式図である。It is the schematic diagram showing an example of the function screen which defines a structure. 条件分岐を指定する機能画面の一例を表した模式図である。It is the schematic diagram showing an example of the function screen which designates a conditional branch. 図1〜図5に表された情報利用システムの具体的な使用例としての第1の実施例を表したブロック図である。It is a block diagram showing the 1st Example as a specific usage example of the information utilization system represented by FIGS. 図1〜図5に表された情報利用システムの具体的な使用例としての第2の実施例を表したブロック図である。It is a block diagram showing the 2nd Example as a specific usage example of the information utilization system represented by FIGS. 図1〜図5に表された情報利用システムのさらに具体的な使用例としての第3の実施例を表したブロック図である。FIG. 6 is a block diagram showing a third embodiment as a more specific usage example of the information use system shown in FIGS. 図17に表された広告配信手段の具体的構成を説明した情報利用システムのブロック図である。FIG. 18 is a block diagram of an information use system that describes a specific configuration of the advertisement distribution unit illustrated in FIG. 17. 図17に表された利用者還元手段の具体的構成を説明した情報利用システムのブロック図である。FIG. 18 is a block diagram of an information use system that explains a specific configuration of the user return means shown in FIG. 17. データ集合体の構成及びその利用還元の流れを説明した情報利用システムのブロック図である。It is a block diagram of an information utilization system explaining the composition of a data aggregate and the flow of its utilization reduction. データ集合体の構成及びその利用還元の流れを概念的に表したブロック図である。It is a block diagram showing notionally the composition of a data aggregate and the flow of its utilization reduction. データ集合体が移動する各段階において広告が合成される場合における利用還元の流れを概念的に表したブロック図である。It is the block diagram which represented notionally the flow of utilization reduction | restoration in case an advertisement is synthesize | combined in each step in which a data aggregate moves. 利用者還元システム/課金システムにより行われる課金及び支払の流れを概念的に表したブロック図である。It is the block diagram which represented notionally the flow of the charge and payment performed by a user return system / billing system. API作成サーバーを使用した情報利用システムに、テンプレートに関する課金システムを備えた実施形態を機能的に表したブロック図である。FIG. 3 is a block diagram functionally showing an embodiment in which an information utilization system using an API creation server is provided with a charging system related to a template. データ集合体の構成及びその利用還元の流れにおける情報利用システムの位置付けを表したブロック図である。It is a block diagram showing the position of the information utilization system in the structure of a data aggregate and the flow of its utilization reduction.

以下、本発明の実施形態を図面に基づいて詳細に説明するが、まず本発明にかかる自動API生成手段を備えた情報利用システムの全体構成を説明する。   Embodiments of the present invention will be described below in detail with reference to the drawings. First, an overall configuration of an information utilization system including an automatic API generation unit according to the present invention will be described.

図1に示された実施形態にかかる情報利用システムは、本実施形態の特徴である自動API生成手段を備えたAPI作成サーバー1と、当該API作成サーバー1に対して適宜のネットワーク(公衆回線)NWを介して接続される多数の一般ユーザー、すなわち後述するデータ提供者やマスタユーザー等を含む一般利用者2の端末2a,2b,・・・,2nと、から構成されている。端末2a,2b,・・・,2nは、パソコンや携帯電話等の通信可能な情報処理機器から構成されるものであるが、API作成サーバー1は次のような構成になされている。   An information utilization system according to the embodiment shown in FIG. 1 includes an API creation server 1 having an automatic API generation means that is a feature of the present embodiment, and an appropriate network (public line) for the API creation server 1. The terminal 2a, 2b,..., 2n of a general user 2 including a data provider, a master user and the like, which will be described later, are connected through the NW. The terminals 2a, 2b,..., 2n are configured from communicable information processing devices such as personal computers and mobile phones, but the API creation server 1 is configured as follows.

すなわち、図2に示されているように、上述したAPI作成サーバー1において採用されたハードウェアは、当該API作成サーバー1のシステム全体を統括的に制御するようにプログラムされた主制御手段(以下、CPUと略称する)1aに記憶装置1bが接続されたものである。上記CPU1aには、また入出力制御部1cを介してキーボードやマウス等のポインティングデバイスからなる入力装置1d、入力データのモニタに用いる入力装置1e、及び各種演算結果その他の検索データを出力する表示装置1fが接続されている。   That is, as shown in FIG. 2, the hardware adopted in the API creation server 1 described above is the main control means (hereinafter referred to as the main control means) programmed to control the entire system of the API creation server 1 in an integrated manner. The storage device 1b is connected to 1a. The CPU 1a also has an input device 1d composed of a pointing device such as a keyboard and a mouse, an input device 1e used for monitoring input data, and a display device for outputting various calculation results and other search data via the input / output control unit 1c. If is connected.

前記CPU1aの内部メモリ内には、OS(Operating System)等の制御プログラムが格納されているとともに、マスタデータをAPI(Application Program Interface)化する本実施形態にかかる自動API生成プログラム、及び所要データが格納されている。また、記憶装置1bは、ハードディスクや光ディスク、或いはフレキシブルディスク等のストレージ手段であり、個人や企業からなる一般ユーザー(マスタユーザー)2に関するデータ群がマスタデータとして登録されている。   A control program such as an OS (Operating System) is stored in the internal memory of the CPU 1a, and an automatic API generation program and required data according to this embodiment for converting master data into an API (Application Program Interface) are stored. Stored. The storage device 1b is storage means such as a hard disk, an optical disk, or a flexible disk, and a data group related to a general user (master user) 2 composed of an individual or a company is registered as master data.

すなわち、図3に示されているように、上述したAPI作成サーバー1内に設けられた記憶手段(後述)に格納されたデータ群11には、個人や企業からなる一般ユーザー(マスタユーザー)2のマスタデータが、後述するようにして生成されるAPI(Application Program Interface)がアクセス可能な状態のデータベースとして登録されている。また、API作成サーバー1内には、ユーザーが指定する仕様やマスタデータ構造を基にAPIを作成する自動API生成手段としての自動API生成プログラム(自動API生成ツール;以下においてAPIC(Application Program Interface Creator)と略称する。)12が設けられている。   That is, as shown in FIG. 3, the data group 11 stored in the storage means (described later) provided in the API creation server 1 includes a general user (master user) 2 made up of an individual or a company. Are registered as a database accessible by an API (Application Program Interface) generated as described later. The API creation server 1 includes an automatic API generation program (automatic API generation tool; APIC (Application Program Interface Creator) as an automatic API generation means for generating an API based on specifications and master data structures specified by the user. Abbreviated as ")").

この自動API生成ツール(APIC)が設けられたAPI作成サーバー1を使用する情報利用システムを、以下においてAPICシステムと呼ぶこととする。自動API生成ツール12は、個人や企業からなる一般ユーザー(マスタユーザー)2が保有しているマスタデータを、後述するようにして第三者に閲覧又は利用可能な適宜の仕様のマスタデータにAPI化して登録し、或いは公開する機能を有するものであって、少なくともマスタデータのAPI化に関するアシスト機能、及びデータベースの作成・入出力設計を自動又は対話形式で行う構成を有している。   An information utilization system that uses the API creation server 1 provided with this automatic API generation tool (APIC) is hereinafter referred to as an APIC system. The automatic API generation tool 12 converts the master data held by a general user (master user) 2 made up of an individual or company into master data having an appropriate specification that can be viewed or used by a third party as described later. It has a function of registering or publishing, and having at least an assist function related to API conversion of master data and a configuration for performing database creation / input / output design automatically or interactively.

また、そのAPI作成サーバー1内に設けられた自動API生成ツール12は、そのまま他のユーザーサーバー3内に移植可能となるように構成されている。このように他のユーザーサーバー3に移植された自動API生成ツール32によって、当該他のユーザーサーバー3内のデータ群31に登録されたマスタデータが、第三者に閲覧又は利用可能な適宜の設計仕様のデータベースにAPI化されて登録・公開されるようになっている。   Further, the automatic API generation tool 12 provided in the API creation server 1 is configured to be portable as it is in another user server 3. In this way, the automatic API generation tool 32 ported to the other user server 3 can appropriately design the master data registered in the data group 31 in the other user server 3 to be viewed or used by a third party. It is registered and released as an API in the specification database.

上述したように、API作成サーバー1及び他のユーザーサーバー3に設けられた自動API生成ツール12,32からは、第三者によって容易に利用される形式で、例えば関数、プロシージャ、変数、データ構造、又はインタプリタなどに関してAPI化されたプログラムからデータが出力される構成になされており、これによって、例えばマッシュアップ・サイト等の統合ウェブページからの要求に対応してユーザーのデータベースを容易に提供することが可能となる。なお、これらの自動API生成ツール12,32は、データベースの作成及び提供機能のみならず、登録されたマスタデータに関する種々のプログラム機能を作成及び提供するように構成することも可能である。   As described above, the automatic API generation tools 12 and 32 provided in the API creation server 1 and other user servers 3 can be easily used by third parties, for example, functions, procedures, variables, and data structures. Alternatively, data is output from an APIized program regarding an interpreter, etc., thereby easily providing a user database in response to a request from an integrated web page such as a mashup site. It becomes possible. These automatic API generation tools 12 and 32 can be configured not only to create and provide a database, but also to create and provide various program functions related to registered master data.

次に、上述した自動API生成ツール12,32、及びその自動API生成ツール12,32を利用したAPICシステム(情報利用システム)の機能を、システム全体の処理動作動の流れに基づいて説明する。例えば、図4に示されたAPICサイト(Application Program Interface Creator Site)は、本発明の一実施形態にかかる自動API生成ツール12,32を備えたAPICシステムにより形成されたサイトであるが、そのAPICサイトを利用したデータの流れに従って、前記自動API生成ツール12,32と、その自動API生成ツール12,32を利用した情報利用システムの機能を説明する。   Next, the functions of the automatic API generation tools 12 and 32 described above and the APIC system (information utilization system) using the automatic API generation tools 12 and 32 will be described based on the flow of processing operation of the entire system. For example, the APIC site (Application Program Interface Creator Site) shown in FIG. 4 is a site formed by the APIC system including the automatic API generation tools 12 and 32 according to an embodiment of the present invention. The automatic API generation tools 12 and 32 and the functions of the information utilization system using the automatic API generation tools 12 and 32 will be described in accordance with the flow of data using the site.

図4及び図5に示されているように、まず最初のステップ1(ST1)として、マスタユーザーMUによるAPICサイトへのアクセス(ユーザークセス)が行われる。マスタユーザーMUは、メタデータ等からなるデータを保有しているユーザーであるが、そのマスタユーザーMUがAPICサイトにアクセスすることにより、次に説明するような自動API生成ツールのアシスト機能を利用してAPICサイトのサーバー(API作成サーバー)内に自己が所有するマスタデータ記憶手段にデータベースとして登録され公開されるようになっている。 As shown in FIGS. 4 and 5, first, as the first step 1 (ST1), the master user MU accesses the APIC site (user access). The master user MU is a user who holds data composed of metadata or the like, but when the master user MU accesses the APIC site, the assist function of the automatic API generation tool as described below is used. In the APIC site server (API creation server), the master data owned by itself is registered as a database in the storage means and made public.

なお、このときのマスタユーザーMUによるデータ入力は、例えば次のa.〜c.のような一般的になじみのある形式で行われる。   The data input by the master user MU at this time is, for example, the following a. ~ C. It is done in a generally familiar form like

a.直接入力(データベース・テーブルを作成して直接入力)
これは、ウェブサイト画面やローカル端末アプリケーションなどのように、APICシステムに接続可能な様々なソフトウェア(以下、APIC接続端末ソフトウェアと呼び、マッシュアップソフトウェアを含むものとする。)上に、データベース・テーブル作成画面を表示させて行うもので、ユーザーは、任意のテーブル数を持つデータベース、任意のフィールド(カラム)数を持つテーブルを作成し、データベース名称、テーブルの名称、フィールドの名称、データ幅、属性等を必要に応じて定義する。そして、そのユーザーが定義した内容に従って、データベースおよびテーブルを作成するためのデータベース操作言語のコードを動的に生成して実行させ、APICサーバー内にユーザー定義のデータベースを構築する。このような操作は、必要なテーブル又はデータベース数分にわたって繰り返されるか又は同時に行われる。
a. Direct input (Create a database table and input directly)
This is a database table creation screen on various software that can be connected to the APIC system (hereinafter referred to as APIC connection terminal software, including mashup software) such as a website screen and a local terminal application. The user creates a database with an arbitrary number of tables and a table with an arbitrary number of fields (columns), and sets the database name, table name, field name, data width, attributes, etc. Define as needed. Then, according to the contents defined by the user, a database operation language code for creating a database and a table is dynamically generated and executed to construct a user-defined database in the APIC server. Such operations are repeated or performed simultaneously for as many tables or databases as necessary.

b.CSV、SQL、JSON、XML、又は一般的な表計算ソフト用ファイルやデータベースソフト用ファイル等からのインポート
これは、APIC接続端末ソフトウェア上に、ファイルのアップロード画面を表示させて、ユーザーが任意の1つまたは複数のファイルをアップロードするものであり、その際にデータベースやテーブルの名称等を設定する。すなわち、アップロードされたファイルの種類を判別し、データ構造を解析した後に、その解析したデータ構造に基づいて、データベースおよびテーブルを作成するためのデータベース操作言語のコードを動的に生成・実行してAPICサーバー内にユーザー定義のデータベースを構築する。このような操作は、必要なファイル数分にわたって繰り返されるか又は複数ファイルが同時に処理される。
b. Import from CSV, SQL, JSON, XML, or general spreadsheet software file, database software file, etc. This is a file upload screen displayed on the APIC terminal software, and the user can select any one One or more files are uploaded, and the names of databases and tables are set at that time. That is, after determining the type of uploaded file and analyzing the data structure, the database operation language code for creating the database and table is dynamically generated and executed based on the analyzed data structure. Build a user-defined database in the APIC server. Such an operation is repeated over the required number of files or a plurality of files are processed simultaneously.

c.既存のAPIC用テンプレートを利用しての入力
ここで、既存APIC用テンプレートとは、既に作成済みでテンプレートとして公開されているデータベース仕様やAPI仕様を指すものであり、APIC接続端末ソフトウェア上に、テンプレート選択画面が表示されると、ユーザーは任意のテンプレートを選択し、データベースやテーブルの名称等を設定する。そして、そのテンプレートに基づいて、データベースおよびテーブルを作成するためのデータベース操作言語のコードを動的に生成・実行してAPICサーバー内にユーザー定義のデータベースを構築する。これを必要なテンプレート数分繰り返すか又は複数テンプレートを同時に処理する。
c. Input using an existing APIC template Here, an existing APIC template refers to a database specification or API specification that has already been created and published as a template, and the template is displayed on the APIC connection terminal software. When the selection screen is displayed, the user selects an arbitrary template and sets the name of the database or table. Based on the template, a database operation language code for creating a database and a table is dynamically generated and executed to construct a user-defined database in the APIC server. This is repeated as many times as necessary, or a plurality of templates are processed simultaneously.

また、このときのマスタユーザーMUによるデータ入力は、本発明にかかる自動API生成ツール(APIC)を使用した、次のような形式d.で行うことができる。   Further, the data input by the master user MU at this time uses the automatic API generation tool (APIC) according to the present invention in the following format d. Can be done.

d.APIの入出力から作成
この場合には、まずAPIC接続端末ソフトウェア上に、APIに対する入出力を作成する画面が後述するようにして表示され、ユーザーは、画面上でAPIの入出力に必要な要素(エレメント、カラム、フィールド)を設定する。APICシステムは、設定された要素の数や属性(データ幅、データ型など)をプログラムで動的に解析し、データベース操作言語のコードを動的に生成・実行してAPICサーバー内にユーザー定義のデータベースを構築する。なお、データベース設計後には、データ登録や閲覧可能なユーザーや、ユーザーグループのアクセス権設定等が行われ、特定のユーザー又は全ユーザーに対するアクセス制御を設定することとする。
d. Created from API input / output In this case, a screen for creating an input / output for the API is first displayed on the APIC connection terminal software as will be described later, and the user is required to input / output the API on the screen. Set (element, column, field). The APIC system dynamically analyzes the number of elements and attributes (data width, data type, etc.) that have been set by a program, dynamically generates and executes database operation language code, and creates user-defined codes in the APIC server. Build a database. Note that after the database design, data registration and browsing users, user group access rights, etc. are set, and access control for specific users or all users is set.

そして、このようなデータベースに対するデータ登録は、例えば次のようにして行われる。   And the data registration with respect to such a database is performed as follows, for example.

a.アクセス権のあるユーザーに対して、APIC接続端末ソフトウェア上に対象となるデータベース仕様に基づいてデータ登録用画面をプログラムで動的に作成・表示し、ユーザーがデータ入力画面上から必要なフィールドを埋めて登録決定する。
b.アクセス権のあるユーザーに対して、APIC接続端末ソフトウェア上にCSV、SQL、JSON、XML、一般的な表計算ソフト用ファイルやデータベースソフト用ファイル等からインポートするためのデータ登録用画面をプログラムで動的に作成・表示して、ユーザーがファイルを指定してデータを登録する
c.アクセス権のあるユーザーに対して、データ登録用メールアドレスを公開し、ユーザーが自ら予め登録したメールアドレスから電子メールにデータを記述して送信し、APICがメールデータを受け付けてデータベースに登録する。このとき、データのフィールド分析はカンマや空白文字または改行など予め設定した区切りコードによる識別などの方法によって、送信されたメール本文をプログラムで動的に解析し、データベース仕様に応じてデータ登録する。
a. For users with access rights, data registration screens are dynamically created and displayed on the APIC connection terminal software based on the target database specifications, and the necessary fields are filled by the user from the data entry screen. To register.
b. For users with access rights, a data registration screen for importing from CSV, SQL, JSON, XML, general spreadsheet software files, database software files, etc. on the APIC connection terminal software is run by a program. Create and display automatically, and the user specifies the file and registers the data c. A data registration e-mail address is made public to users who have access rights, data is written and transmitted from the e-mail address registered in advance by the user, and APIC accepts the e-mail data and registers it in the database. At this time, in the field analysis of data, the transmitted mail body is dynamically analyzed by a program by a method such as identification by a preset delimiter code such as a comma, a blank character or a line feed, and the data is registered according to the database specification.

ここで、上述したようなデータベースに対するデータの登録にあたっては、ステップ2(ST2)のように自動API生成ツール(自動API生成手段)12,32のアシスト機能を利用してマスタデータを元にした自動API生成が行われる。より具体的には、前記自動API生成ツール12,32は、「API仕様決定機能」及び「データベース作成機能」を有しており、そのうちの「API仕様決定機能」としては、例えば図6に示されているようなAPIの名称や概要等からなる「API基本情報」についての入力画面を表示してユーザーに提示することにより登録する機能と、例えば図7に示されているような入出力の名称・識別子やデータタイプ等の「入出力パラメータ」についての入力画面を表示してユーザーに提示することにより登録する機能と、例えば図8に示されているような入力パラメータと出力パラメータとの間における演算や条件などの「処理内容」について入力画面を表示してユーザーに提示することにより登録する機能と、を備えている。   Here, in registering data in the database as described above, automatic processing based on master data using the assist function of the automatic API generation tools (automatic API generation means) 12 and 32 as in step 2 (ST2). API generation is performed. More specifically, the automatic API generation tools 12 and 32 have an “API specification determination function” and a “database creation function”, and the “API specification determination function” is shown in FIG. A function for registering by displaying an input screen for “API basic information” consisting of the API name and outline as shown and presenting it to the user, and for example input / output as shown in FIG. Between an input parameter and an output parameter as shown in FIG. 8, for example, a function of registering by displaying an input screen for “input / output parameters” such as name / identifier and data type and presenting it to the user And a function of registering by displaying an input screen and presenting it to the user about “processing contents” such as computations and conditions.

これらのうちの「パラメータの名称」としては、例えば現在位置緯度情報(latitude)、現在位置経度情報(longitude)、緯度経度指定場所からの距離(distance)、時刻(time)、住所上の現在位置(address)、最寄り駅(station)などが使用される。「入出力パラメータ」のデータタイプとしては、例えば、整数型、浮動小数点型、文字列、ファイルなどがあり、入出力の識別子としては、例えば、パラメータが入力か出力かを示す識別子がある。また、データ型に対する付随情報として、進数や浮動小数点の精度などの属性や、定義長のサイズ等を付加することも可能である。   Among these, “parameter names” include, for example, current position latitude information (latitude), current position longitude information (longitude), distance from a latitude / longitude designation location (distance), time (time), current position on the address (address), nearest station (station), etc. are used. The data type of “input / output parameter” includes, for example, an integer type, a floating point type, a character string, a file, and the like, and the input / output identifier includes, for example, an identifier indicating whether the parameter is input or output. Further, as accompanying information for the data type, attributes such as decimal numbers and floating point precision, the size of the definition length, and the like can be added.

APICシステムは、ユーザーが入力した内容を、各々のデータ型等に対応する内部記号を示す予め決められた文字列に置き換えて保存する。こうすることによって、後で読み出した時に機械的にプログラム言語の変数宣言として使用することができたり、或いは関数のプロトタイプ宣言なども機械的に行うことができる。ユーザーがパラメータとして定義した変数名称や属性を基にXML形式で保存を行う場合には、例えば以下のようにして、作成者<Author>、API名称<APIName>、バージョン<Version>、概要<Comment>、作成日時<Created>、最終変更日時<LastEdited>等の保存が行われる。   The APIC system replaces the content input by the user with a predetermined character string indicating an internal symbol corresponding to each data type or the like, and stores it. By doing so, it can be mechanically used as a variable declaration in a program language when it is read later, or a function prototype can be mechanically declared. When saving in XML format based on variable names and attributes defined by the user as parameters, for example, creator <Author>, API name <APIName>, version <Version>, overview <Comment >, Creation date and time <Created>, last modification date and time <LastEdited>, etc. are saved.

前省略
<APIProperties>
<Author>sample author</Author>
<APIName>SampleAPI</APIName>
<Version>1.00</Version>
<Comment>this is a sample</Comment>
<Created>2008-11-29</Created>
<LastEdited>2009-09-29</LastEdited >
</APIProperties >
後省略
Previous omission
<APIProperties>
<Author> sample author </ Author>
<APIName> SampleAPI </ APIName>
<Version> 1.00 </ Version>
<Comment> this is a sample </ Comment>
<Created> 2008-11-29 </ Created>
<LastEdited> 2009-09-29 </ LastEdited>
</ APIProperties>
Omitted

なお、その他の形式で保存する場合や、データベースに保存する場合も、同等のフィールドを設けてそこへ正しく保存すればよい。また、作成日時や最終変更日はAPICシステムに保存された日時を保存するのでユーザーが自分で入力しなくても良い。   It should be noted that even when saving in other formats or in the database, an equivalent field may be provided and saved correctly there. In addition, since the creation date and time and the last modification date are saved in the APIC system, the user does not have to input them.

そして、APIプログラムの内部で使用する変数として図7に示されているような arg_A 、或いは図8のような arg_B、Ret_C を定義することが行われる。そのパラメータ変数が、整数型/浮動小数点型/文字列/配列/ファイル/構造体等の何れであるかを示す予め定めた内部表記や、あるいはそれが入力か出力かを示す内部表記を同様に定めておくことによって、この内容を後で読み出した時に機械的にプログラムの変数宣言に置き換えられる。   Then, arg_A as shown in FIG. 7 or arg_B and Ret_C as shown in FIG. 8 are defined as variables used in the API program. Similarly, a predetermined internal notation indicating whether the parameter variable is an integer type / floating point type / character string / array / file / structure, or an internal notation indicating whether the parameter variable is input or output is similarly used. By predetermining, when this content is read later, it is mechanically replaced with the variable declaration of the program.

また、処理内容の決定は、例えばAPICシステムが提供する擬似コードの部品をユーザーが選択・組合せる事で自動的にプログラムを生成することで行われるが、その場合のユーザーは、APICシステムが提供する規定のオペレーションを選択することによって、入力パラメータと出力パラメータの間に存在するべき処理を作成することが出来る。これは、プログラムを書くという専門的なレベルではなく、各パラメータに対して、加減乗除のような単純な「四則演算」を指定したり、「データベースに保存する」「データベースから取得する」といった文言を選択したり、[A=○○の場合は]や[それ以外の場合は]というような条件を文言で指定するような形式で行われる。プログラムの知識が無いユーザーや、ある程度知識があっても煩わしい様々な工程を簡素化したいユーザーを対象とした場合には、上記手法が主な処理内容決定の工程になる。   The processing content is determined by automatically generating a program by the user selecting and combining pseudo code parts provided by the APIC system, for example. The user in this case is provided by the APIC system. By selecting a specific operation to be performed, a process that should exist between the input parameter and the output parameter can be created. This is not a technical level of writing a program. For each parameter, simple "four arithmetic operations" such as addition, subtraction, multiplication, and division are specified, and words such as "save to database" and "get from database" are used. Is selected or a condition such as [if A = OO] or [otherwise] is specified in terms of words. When a user who has no knowledge of a program or a user who wants to simplify various troublesome processes even if he / she has some knowledge, the above method is a main process content determination step.

上述したようにAPICシステムは、ユーザーによる演算式の各要素を、各々の演算処理に対応する内部記号を示す予め決められたデータや文字列に置き換えて保存する。例えば、ユーザーによる入力を、内部的に原始的な各ステップに分解して、後で読み出した時に行うべき処理が認識できる方法で保存する。例えば、掛け算が選択された場合は、Operand_Left(左辺を示す)にOperand_Right(右辺を示す)を代入するという内部処理1ステップ目を”MOVE”という“代入処理”を示す文字列を予め決めておいて、その記法に則って、ユーザーが入力した内容を保存する。例えば、上記MOVEを利用してRet_Cという変数にarg_Aという変数を代入するという意味を表す内部表記を保存しておけば、後で読み出したときに、機械的にプログラムを記述することが出来る。例えばC言語でAPIを記述する場合は、この内部処理は Ret_C = argA; という一文に置き換えることが出来る。   As described above, the APIC system replaces each element of the arithmetic expression by the user with predetermined data or a character string indicating an internal symbol corresponding to each arithmetic processing and saves it. For example, the input by the user is internally decomposed into primitive steps and stored in such a way that the processing to be performed when it is read later can be recognized. For example, when multiplication is selected, a character string indicating “substitution processing” of “MOVE” is determined in advance in the first step of the internal process of substituting Operand_Right (indicating the right side) into Operand_Left (indicating the left side). In accordance with the notation, the contents entered by the user are saved. For example, if the internal notation representing the meaning of substituting the variable arg_A for the variable Ret_C using the above MOVE is stored, the program can be mechanically described when read later. For example, when API is described in C language, this internal processing can be replaced with a single sentence Ret_C = argA ;.

そして、次の内部ステップで Ret_C×arg_Bの計算結果をRet_Cに代入するという処理を行いたい場合、“MUL”という文字列を予め“掛け算をする”という処理を示す記号として決めておくことによって、後から読み出した時にこのステップが 左辺(Ret_C)×右辺(arg_B)を行い、結果を左辺(Ret_C)に入れる、という処理を行うという事が分かるので、機械的にプログラム言語に置き換えることが出来る。この例の場合、C言語では Ret_C *= arg_B; という一文に置き換えることが出来る。以上の2ステップの内部処理によって、Ret_C = arg_A * arg_Bという計算処理を行うプログラムを機械的に作成する事ができる。もっとも、ここで示した例通りではなく、Operand_Left,Operand_Right以外に代入先を示す属性を定義して、そこへ計算結果を代入するという記法を定義しておくことによって、内部処理の定義を簡素化することは可能であり、また同様に“MOVE”や“MUL”という文字列を使用せずにそのままプログラム言語で使用できる“*”や“=”でもかまわない。ただ、処理内容が原始的・低レベルであればあるほど、対応出来るプログラミング言語が多くなると期待できる。また、各STEPにidを付加して保存することによって、処理する順番も後で読み出した時に判別可能であるし、処理をジャンプさせる事が可能となるので分岐やループなどを実現できる為、プログラムを構造化することが可能である。   And, if you want to perform the process of substituting the calculation result of Ret_C × arg_B into Ret_C in the next internal step, by predetermining the character string “MUL” as a symbol indicating the process of “multiply”, When this is read out later, it can be understood that this step performs the process of performing the left side (Ret_C) x right side (arg_B) and putting the result into the left side (Ret_C), so it can be mechanically replaced with a programming language. In this example, in C language, it can be replaced with a single sentence Ret_C * = arg_B; Through the internal processing of the above two steps, a program for performing a calculation process of Ret_C = arg_A * arg_B can be created mechanically. However, instead of the example shown here, the definition of the internal processing is simplified by defining the attribute indicating the assignment destination in addition to Operand_Left and Operand_Right, and defining the notation of assigning the calculation result there. Similarly, it is possible to use “*” and “=” which can be used in the programming language without using the character strings “MOVE” and “MUL”. However, it can be expected that the more the processing content is primitive and the lower the level, the more programming languages it can handle. In addition, by adding an id to each STEP and storing it, the processing order can be determined when it is read later, and it is possible to jump processing, so it is possible to realize branches, loops, etc. Can be structured.

一方、データベースを使用するには、既に作成されているデータベースを使用する場合と、処理仕様の内容から自動API生成ツール(APIC)が自動的に新規テーブルを作成する「データベース作成機能」を使用する場合とがあるが、後者については、前述したように「d.APIの入出力から作成」として既に説明したものであるが、これらについて、より詳細に説明しておく。   On the other hand, in order to use a database, a case where an already created database is used and a “database creation function” in which an automatic API generation tool (APIC) automatically creates a new table from the contents of the processing specification are used. Although the latter has already been described as “d. Created from input / output of API” as described above, these will be described in more detail.

一例として、「入力されたパラメータarg_Numberの番号に対応した挨拶文を出力する」というAPIを、データベースに挨拶文リストを保存しておいて、そこから抽出するという方法で実現する場合を説明する。この場合、挨拶文リストをテーブルに保存する作業はAPICサイトのデータベース登録画面から、前述したようなa.〜c.などの既存の方法で入力しても良いし、データ登録用APIを作成してそのAPI経由で保存してもよい。ここでは、保存も抽出もAPI経由で行う場合として説明するので、「入力されたパラメータstr_Greetingの値をデータベースに保存する」というデータ登録用APIも合わせて説明する。また、ここでは、テーブル構造は、整数型idというフィールドと文字列型Greetingというフィールドの2つのみとする。   As an example, a case will be described in which an API “output a greeting corresponding to the number of the input parameter arg_Number” is realized by a method of saving a greeting list in a database and extracting it. In this case, the work of saving the greeting list in the table can be performed from the database registration screen of the APIC site by a. ~ C. For example, the data registration API may be created and stored via the API. Here, since storage and extraction are described as being performed via the API, a data registration API of “saving the value of the input parameter str_Greeting in the database” will also be described. Also, here, there are only two table structures, a field called integer type id and a field called character string type Greeting.

(1)既存テーブルを使用する場合
前述したようなa.〜c.などの既存の方法で既に作成しているデータベーステーブル”Sample_Table_1”のGreetingというフィールドに保存する場合、データ登録APIの仕様は「パラメータstr_Greetingで指定した文字列をデータベースに保存する」となり、例えば図9に示されているような、既存テーブルへのデータ保存を指定する処理仕様入力画面が用いられる。ここでは、説明を簡単にするために、Greetingの番号はオートインクリメントで保存されるものとしており、まず、このデータ登録用APIのパラメータ仕様で文字列型str_Greetingを定義し、次にプログラム仕様のステップでstr_Greetingをデータベースに保存するという選択を行う。
(1) When using an existing table a. ~ C. In the case of saving in the field “Greeting” of the database table “Sample_Table_1” already created by the existing method such as, the specification of the data registration API is “save the character string specified by the parameter str_Greeting in the database”. The process specification input screen for designating data storage in the existing table as shown in FIG. Here, for the sake of simplicity, it is assumed that the Greeting number is stored by auto-increment. First, the string type str_Greeting is defined by the parameter specification of the data registration API, and then the program specification step. Select to save str_Greeting in the database.

この場合、「データベーステーブルへの保存を行う」旨を示す“DB_SAVE”という内部記号とその記法を予め決めておくことによって、後で読み出した時に一意にプログラムに変換する事ができる。また、プログラム内の工程として、データベースへの接続、SQL等のデータベース操作言語実行、実行結果の返却という処理が必要であるが、これらの工程は一意に機械的に作成できるので、ここで重要なのはSQL等のデータベース操作言語の記述内容そのものである。上記のように必要な情報を後で読み出して解析できるような方法で保存しておくことによって、データベース操作言語の記述内容も自動生成が可能である。例ではSample_Table_1というテーブルのGreetingというフィールドに変数str_Greetingが保持している値を保存するという内容であると解釈できるので、即ちINSERT 文(SQLの場合)などを生成することが可能である。同様にSELECT文やUPDATE文なども生成可能である。   In this case, by predetermining the internal symbol “DB_SAVE” indicating “save to database table” and its notation, it can be uniquely converted to a program when read later. In addition, as the steps in the program, it is necessary to connect to a database, execute a database operation language such as SQL, and return the execution result, but these steps can be created uniquely mechanically, so the important thing here is It is the description itself of database operation language such as SQL. By storing necessary information in a manner that can be read and analyzed later as described above, the description content of the database operation language can be automatically generated. In the example, it can be interpreted that the value stored in the variable str_Greeting is stored in the field called Greeting of the table Sample_Table_1, that is, an INSERT statement (in the case of SQL) can be generated. Similarly, SELECT statements and UPDATE statements can be generated.

データベースへの接続にはパスワードが必要であるように構成した場合には、APIを作成する言語によってデータベースへの接続を行うプログラムの記述方法は異なるが、どの言語であってもデータベースに接続できるものであれば、適宜に定めたパスワードを利用して、データベースへのアクセスを行うプログラムを機械的に自動生成することが出来る。その他の接続先サーバー情報(データベースサーバのホスト名/データベースユーザー名/データベース名など)はAPICシステムのインストール時にサイト管理者が設定したものを使用してもよいし、あるいは、ユーザー毎にこれらを作成するような仕組みにしてもよい。   When a password is required to connect to the database, the method of writing the program that connects to the database differs depending on the language in which the API is created, but it can be connected to the database in any language If so, it is possible to automatically generate a program for accessing the database mechanically by using an appropriately determined password. Other connection destination server information (database server host name / database user name / database name, etc.) may be set by the site administrator when installing the APIC system, or created for each user. You may make it the mechanism which does.

抽出APIの仕様は「arg_Numberに応じた挨拶文を取得する」という内容であるので、処理ステップの入力で、例えば図10に示されているような、既存テーブルからデータ抽出を指定する処理仕様入力画面において、「データベースから抽出する」を選択し、テーブルは「Sample_Table_1」、フィールドは「Greeting」を選択する。そして「id=arg_Number」という抽出条件が加えられて、このステップの仕様決定が完了する。   Since the specification of the extraction API is “acquisition greetings according to arg_Number”, the processing specification input for designating data extraction from the existing table as shown in FIG. On the screen, select “Extract from database”, select “Sample_Table_1” for the table and “Greeting” for the field. Then, an extraction condition “id = arg_Number” is added, and the specification determination of this step is completed.

この保存と同様に、例えば文字列型変数Ret_CにテーブルSample_Table_1の文字列型フィールドGreetingの値を保存するという処理仕様が書かれる事となる。入力画面でユーザーが設定した内容に従って、予め決めた例えば “DB_SELECT”、”Table”、 ”Field” 、“Where”などの周知の記法に則って上記のように後でどういう処理内容かを識別できるように保存する。そして、予め定めた適宜の条件を元にプログラムでデータベースに仕様どおりの検索をかけて、得られた結果を変数Ret_Cに代入するというAPIプログラムを機械的に生成する事が可能となる。また、後述する構造体定義や配列を定義可能とすることで、複数のフィールドを任意の構造体型変数や配列に入れる事も可能となるし、また内部変数は全て配列として扱う事にしてもよい。   Similar to this storage, for example, a processing specification for storing the value of the character string type field Greeting of the table Sample_Table_1 in the character string type variable Ret_C is written. According to the contents set by the user on the input screen, the processing contents can be identified later as described above in accordance with a well-known notation such as “DB_SELECT”, “Table”, “Field”, “Where”, etc. To save. Then, it is possible to mechanically generate an API program in which a program is searched according to a specification based on appropriate conditions determined in advance, and the obtained result is substituted into a variable Ret_C. In addition, by making it possible to define structure definitions and arrays, which will be described later, multiple fields can be included in any structure type variable or array, and all internal variables may be handled as arrays. .

(2)APICによる自動テーブル作成の場合
この場合には、例えば図11に示されているような、自動テーブル作成によるデータ保存を指定する処理仕様入力画面になされる。この例をXML形式で保存する場合、例えば”Field”タグの”Variable”属性で変数str_Greetingを指定するパラメータや変数(後述)として定義(説明省略)されているものであるため、変数の型やデータサイズなどは判別可能であるので、それと同じ属性のフィールドを有するテーブルを自動で作成し、そのテーブルから対象のフィールドを抽出するというプログラムを生成する事が可能である。この場合、APIの基本情報に作成したデータベース名を紐付けておく。これには、既述のAPI基本情報の保存項目に下記のように挿入するなどして、紐付けを行う方法が考えられるが、これによって、仕様テンプレートにデータベースが含まれて再利用が可能となる。この場合のテーブル名称は、ユーザーID、日時情報、不可逆関数、連番などを利用してユニークに識別できるようにしておく。なお、この段階ではidに相当するフィールドが必要だという判断は出来ないが、これに関しては後述の抽出APIのパラメータからの判断となり、このフィールドの挿入タイミングは、その時点かあるいはそれ以降の適宜の時点となる。
(2) Case of automatic table creation by APIC In this case, for example, as shown in FIG. 11, a processing specification input screen for designating data storage by automatic table creation is displayed. When this example is saved in the XML format, for example, it is defined as a parameter or variable (described later) that specifies the variable str_Greeting in the “Variable” attribute of the “Field” tag. Since the data size and the like can be discriminated, it is possible to generate a program that automatically creates a table having the same attribute field and extracts the target field from the table. In this case, the created database name is linked to the basic information of the API. For this, it is possible to perform the association by inserting the API basic information into the saved items as described below, but this allows the specification template to contain a database and be reused. Become. The table name in this case is uniquely identified using a user ID, date / time information, an irreversible function, a serial number, and the like. At this stage, it cannot be determined that the field corresponding to id is necessary, but this is determined from the parameters of the extraction API described later, and the insertion timing of this field is appropriate at that time or after that. It is time.

そして、自動テーブル作成によるデータ抽出を指定するにあたっては、図12に示されているような処理仕様入力画面とされる。この例の場合、検索をかけるテーブル名とフィールド名が自動生成であるので、データ保存の場合と同様に、テーブル名を生成し、変数str_Greetingの属性からフィールドを生成する。そしてこの場合は、データ保存時には無かったフィールド”id”の存在が、抽出条件として予め定めた内部表記である”Where”タグの左辺(Operand_Left)に指定する”arg_Number”から分かるので、同様に“arg_Number”の属性からフィールドを生成する。抽出方法は既存テーブルからの抽出方法と同等であるのでここでは省略する。   When specifying data extraction by automatic table creation, a processing specification input screen as shown in FIG. 12 is used. In this example, the table name and field name to be searched are automatically generated, so the table name is generated and the field is generated from the attribute of the variable str_Greeting as in the case of data storage. In this case, the existence of the field “id” that was not stored at the time of data storage is known from “arg_Number” specified on the left side (Operand_Left) of the “Where” tag, which is a predetermined internal notation as an extraction condition. Create a field from the attribute of “arg_Number”. Since the extraction method is the same as the extraction method from the existing table, it is omitted here.

以上のようにして、データベーステーブルに対するデータ登録およびデータ抽出のAPI自動生成が実現可能となるが、この際に作成したテーブル構造やAPI仕様は、同様の構造で実現できる他の目的のAPIにもそのまま流用できる。つまりこの例の場合、“id”と“文字列”からなるテーブルに対するデータ登録とデータ抽出を行うことで実現できるあらゆるAPI仕様は、そのままこの例の「挨拶文取得API」を流用できる。例えば、挨拶ではなく、「格言」や「占い」等の文言の登録や取得を行うAPIが、何の変更もなく実現できる事は自明である。ゆえに、次に同様のAPIを作りたいユーザーは、この仕様を保存したファイルをそのままコピーし別名で保存するだけで所望のAPIが公開できる。これを、API仕様および紐付けられたデータベース仕様に関してテンプレート化できるのである。このように、APICが提供するこのテンプレート機能によって、1人のユーザーが作成した仕様を基にして、同等構造の様々な用途のAPIが実現できるのである。   As described above, automatic API generation for data registration and data extraction with respect to a database table can be realized, but the table structure and API specifications created at this time can be applied to other target APIs that can be realized with the same structure. Can be used as is. In other words, in the case of this example, any API specification that can be realized by performing data registration and data extraction with respect to the table consisting of “id” and “character string” can be used as it is in the “greeting sentence acquisition API”. For example, it is self-evident that an API for registering and acquiring words such as “maxims” and “fortune-telling” can be realized without any change. Therefore, a user who wants to create a similar API next time can publish a desired API by simply copying the file storing this specification and saving it with a different name. This can be templated with respect to API specifications and associated database specifications. In this way, APIs provided by APIC can realize APIs for various uses having an equivalent structure based on specifications created by one user.

さらに、より高度な複雑な処理をしたい場合のプログラム生成を行う場合、APICはより高度なユーザー向けに一般的なスクリプト言語を直接記述できる環境も提供する。この場合、ユーザーはAPICが対応している言語を選択し、表示するプログラム記述画面に直接プログラムを記述する。プログラムには馴れているので自分で書きたいが、自分でサーバーを借りたりセキュリティの設定やデータベース、プログラム言語の実行環境などを整えるのが煩わしいと思うようなユーザーを対象とした場合、こちらの方法でプログラムが生成されても良い。   Furthermore, APIC also provides an environment in which a general scripting language can be directly written for a more advanced user when generating a program when a more advanced and complicated process is desired. In this case, the user selects a language supported by APIC and describes the program directly on the program description screen to be displayed. This method is for users who are familiar with the program and want to write it by themselves, but who find it troublesome to rent a server themselves and set up security settings, databases, and the execution environment of the program language. The program may be generated by

上述した何れの方法でAPIプログラムが作成されても、ユーザーが作成したプログラムがサーバー内に保存され、外部から実行できるようにする事が重要である。APICは何れの方法で生成したAPIプログラムも実行可能ファイルとして、例えば.phpや.rbなどのファイルに保存して、仕様情報に追加する。また、APICは、API仕様ファイルのアドレスをAPI基本情報と共にAPIリストデータベースに保存するが、そのときのAPIリストデータベースの構造は、既述のAPI基本情報および仕様を保存したAPI仕様ファイルのアドレス等から成る。   Regardless of the method used to create the API program, it is important that the program created by the user is stored in the server and can be executed from the outside. APIC saves an API program generated by any method as an executable file, for example, a file such as .php or .rb, and adds it to the specification information. APIC saves the API specification file address in the API list database together with the API basic information. The API list database structure at that time is the API specification file address in which the API basic information and specifications are stored. Consists of.

次に、出力フォーマットの決定について説明する。出力フォーマットの決定工程は、出力パラメータで指定した変数をどのような形式で出力するかを決定する工程で、一般的にWebサービスで利用されるフォーマット(例えば、XML,JSONなど)をサポートすることが望ましい。この工程は、ユーザーが出力フォーマット設定画面で指定してもよいが、例えばXML、JSONなど全ての出力フォーマットをサポートするようにしておいて、呼び出し側の都合に応じてパラメータで指定させ、適宜出力フォーマットを切り替えるような仕組みでもかまわない。例えば図8に示されているように整数型変数Ret_Cが出力パラメタであり、出力フォーマットをXMLで指定した場合は、APIプログラム内で、xmlヘッダ等必要なタグを付加した後、変数名のタグにてRet_Cを返却すればよいし、JSONであっても同様にデータ構造やデータ型が分かれば、整形する事が可能であることは自明である。   Next, the determination of the output format will be described. The output format determination process is a process to determine the format in which the variable specified in the output parameter is output, and supports the format (eg, XML, JSON, etc.) generally used in Web services. Is desirable. This process may be specified by the user on the output format setting screen, but for example, all output formats such as XML and JSON are supported, and parameters are specified according to the convenience of the caller, and output as appropriate. A mechanism that switches the format is also acceptable. For example, as shown in Fig. 8, if the integer variable Ret_C is an output parameter and the output format is specified in XML, add the necessary tags such as the xml header in the API program, then tag the variable name It is obvious that Ret_C can be returned at, and even JSON can be formatted if the data structure and data type are known.

プログラム仕様を後で読み出して、どのように機械的にプログラムに変換し、生成したプログラムを保存するかについては既に説明したが、この段階で、APICは、APIリストデータベースを参照して、APICサイトに訪れたユーザーに対してAPIリストおよびその概要を表示し、現在APICサイトにどのようなAPIが登録されているかを知らせることが出来る。APICは、APIリストの中からユーザーが選択したAPIの仕様ファイルアドレスが分かっているので、当該ファイルを読み出し、プログラムのアドレスや、入出力仕様をユーザーに知らせる事が出来る。このようにして、API作成ユーザーが作成したAPIプログラムが、一般のAPI利用ユーザーが訪れた際に認識されることとなる。   As described above, how to read the program specification later, mechanically convert it into a program, and save the generated program has already been explained. At this stage, APIC refers to the API list database and stores the APIC site. The API list and the outline thereof are displayed to the user who visited the site, and it is possible to inform the API registered on the APIC site. Since APIC knows the API specification file address selected by the user from the API list, it can read the file and inform the user of the program address and input / output specification. In this way, an API program created by an API creation user is recognized when a general API user visits.

次に、その他、高度なプログラム仕様を設計する為に必要な機能の例を挙げておく。まず、構造体を定義できる機能としては、例えば図13に示されているような画面を利用するが、名前や属性を指定することによって、後で読み出した時に、機械的に構造体を宣言するプログラムに変換することが出来る。また構造体がサポートされていないプログラミング言語の場合は、この機能は無効となるか、別の機能でなどで代用できる場合はしてもかまわない。   Next, other examples of functions necessary for designing advanced program specifications are given. First, as a function for defining a structure, for example, a screen as shown in FIG. 13 is used. By specifying a name and an attribute, the structure is mechanically declared when it is read later. It can be converted into a program. For programming languages that do not support structures, this function may be disabled or another function may be used instead.

また、変数を宣言できる機能、すなわちパラメータ変数以外にも処理内部で使用するための変数を宣言できる機能が、属性指定などパラメータの設定方法と同様の手順で実現可能である。さらに、関数を作成できる機能を持たせて、よく行われる処理を関数として再利用可能な形式にしておくことによって、プログラム内容を簡素化することが出来る。また、この関数も別のAPI仕様作成時にインクルード可能なので、同様の関数を複数のユーザーが作成するという社会的な無駄を無くする事が可能となる。この機能を実現するには、仕様入力画面上に、関数として保存する旨を示すボタンやチェックボックス等を用意しておき、ユーザーがそれらを設定した場合に、APIではなく、関数として保存すればよい。   In addition to the function of declaring a variable, that is, the function of declaring a variable for use inside the process in addition to the parameter variable, it can be realized by the same procedure as the parameter setting method such as attribute designation. Furthermore, the program content can be simplified by providing a function capable of creating a function so that frequently performed processing can be reused as a function. Also, since this function can be included when creating another API specification, it is possible to eliminate social waste that a plurality of users create a similar function. To realize this function, a button or check box indicating that the function is to be saved is prepared on the specification input screen, and if the user sets them, the function can be saved as a function instead of an API. Good.

つまり、APIプログラムもひとつの関数であるので、関数仕様作成に関しても、入出力パラメータの設定を含めて記述方法はAPI仕様作成と全く同じでかまわないのである。違いは、それが関数であるという事が後で読み出した時に認識できなければならないことから、前述したようにXML形式を採用した場合には、基本情報を例えば<APIProperties>タグではなく<FunctionProperties>タグ等にして、公開用APIと内部関数との差異を識別できるようにしておく。こうすることで、外部から実行可能なWebAPIではなく、APIプログラム内部で使用する関数であると区別できる。また、関数は他のAPIからも呼び出し可能とした方がよいので、API作成ユーザーには、一般ユーザーには見せない関数リストも見せる仕組みにしておく必要がある。そして、API仕様の中で関数をコールする記述を、後で読み出して識別できる予め定めた種々の表記法則に則って適宜に設定しておくことで、機械的に当該関数をコールするプログラムに翻訳することが可能となる。   In other words, since the API program is also a function, the description method including the setting of input / output parameters may be exactly the same as the API specification creation for the function specification creation. The difference is that the fact that it is a function must be recognized later when it is read out. Therefore, when the XML format is adopted as described above, the basic information is not the <APIProperties> tag, for example, <FunctionProperties>. The difference between the public API and the internal function can be identified by using a tag or the like. By doing so, it can be distinguished from a WebAPI that can be executed from the outside, but a function that is used inside the API program. In addition, since it is preferable that the function can be called from other APIs, it is necessary to provide a mechanism for showing the function list not shown to general users to the API creation user. The description of calling the function in the API specification is appropriately set according to various notation rules that can be read and identified later, and translated into a program that calls the function mechanically. It becomes possible to do.

さらに、図14に示されているような画面を利用して、例えば処理A又は処理Bのいずれかを選択する等の分岐の設定が可能となっている。これは実行するプログラムのステップを場合によって選択する必要がある場合に使用する。この「分岐設定」の処理は、比較処理と各ステップに付加されているidを利用して該当するステップへのジャンプ処理により実現することが出来る。例えば、比較を示す文字列を内部的に予め定めておき(この例では“COMP”)、左辺(Operand_Left)と右辺(Operand_Right)を比較するという書式を上記のように規定し、その比較結果に応じて指定されたステップIDにジャンプすることによって分岐(Branch)を実現できる。この例では、“EQ”は“=”(equal、つまり比較対象が等しい)という事を示し、その場合にはステップ3へジャンプするという事を意味し、それ以外の場合(ELSE)にステップ4へジャンプするという事を意味する。このように記法を定める事によって、APICが“COMP”ステップを読み出した時に機械的にプログラムに翻訳する事ができる。その際に、行った比較の結果を保持する内部変数(以下、コンディションコード変数と呼ぶ)を予め用意しておいて、そこに逐次各実行ステップの結果が正か負かを保持することによってCOMPを行わずともBranchさせることも可能である。   Furthermore, by using a screen as shown in FIG. 14, for example, setting of branching such as selecting either processing A or processing B is possible. This is used when it is necessary to select the program steps to be executed. This “branch setting” process can be realized by a jump process to the corresponding step by using the comparison process and the id added to each step. For example, a character string indicating comparison is internally determined in advance (in this example, “COMP”), and the format for comparing the left side (Operand_Left) and the right side (Operand_Right) is defined as described above. A branch can be realized by jumping to the specified step ID accordingly. In this example, “EQ” indicates “=” (equal, that is, the comparison targets are equal), in which case it means jump to step 3, otherwise step 4 in ELSE It means to jump to. By defining the notation in this way, when the APIC reads the “COMP” step, it can be mechanically translated into a program. At this time, an internal variable (hereinafter referred to as a condition code variable) that holds the result of the comparison performed is prepared in advance, and the COMP is obtained by sequentially holding whether the result of each execution step is positive or negative. It is also possible to branch without performing.

また、同様に“NE”(not equal)、“BT”(Bigger Than)、“LT”(Less Than) などを規定しておけば、ユーザーがそれらの条件分岐を使用できる環境を提供可能となる。あるいはMINMAX(Minimum Maximum)などを定義して指定する最大値最小値の間に入っている場合のみ特定の処理を行うという事も可能となる。つまり if( arg_A > arg_B ) や if( arg_A < arg_B )、あるいはif( ( 0 < arg_A ) && ( arg_A < 10 ) ) といった条件分岐が使用可能となる。また、その分岐を利用してループが実現可能である。ループ回数を保持するカウンタ変数を内部的に利用し、ユーザーが設定したループ回数またはループ処理に入る時の変数が保持している値との比較により、ループの先頭に戻るか、ループを終了するか、という条件判断ができる。また、内部カウンタ変数などを使用せずとも、条件分岐と任意ステップへのジャンプの組み合わせのみでループは実現可能であることは自明であるので、ここでは省略する。   Similarly, if "NE" (not equal), "BT" (Bigger Than), "LT" (Less Than), etc. are specified, it is possible to provide an environment in which users can use these conditional branches. . Alternatively, it is possible to perform specific processing only when the value is between the maximum and minimum values specified by defining MINMAX (Minimum Maximum) or the like. In other words, conditional branches such as if (arg_A> arg_B), if (arg_A <arg_B), or if ((0 <arg_A) && (arg_A <10)) can be used. Further, a loop can be realized using the branch. The counter variable that holds the loop count is used internally, and the loop count is set by the user or compared with the value held in the variable at the time of entering loop processing, the loop is returned to the beginning or the loop is terminated. It is possible to judge the condition. Further, since it is obvious that a loop can be realized only by a combination of a conditional branch and a jump to an arbitrary step without using an internal counter variable or the like, it is omitted here.

なお、処理仕様の内容からAPICが自動的に新規テーブルを作成する場合には、マスタデータの統計又は解析を予め定めた適宜の条件下、例えばデータベースの使い易さに関して、どのような種類のデータを採用するか、或いは各データの並び順をどのようにするか等の条件を自動設定又はユーザーへ提案することが可能である。   When APIC automatically creates a new table from the contents of the processing specifications, any type of data regarding the ease of use of the database, for example, under appropriate conditions for pre-determining statistics or analysis of master data It is possible to automatically set or propose to the user conditions such as how to arrange each data and how to arrange the data.

さらに当該自動API生成ツール12,32は、決定されたAPI仕様に基づいて作成されたデータベースの全部又は一部をネットワーク上に公開するAPI発信機能を同じくプログラムとして備えており、第三者によって容易に利用される形式となるように例えば関数、プロシージャ、変数、データ構造、又はインタプリタなどに関してAPI化されたデータベース又はプログラムを公開する機能を有している。   Further, the automatic API generation tools 12 and 32 are also provided with an API transmission function as a program for publishing all or part of the database created based on the determined API specification on the network, and can be easily performed by a third party. For example, functions or procedures, variables, data structures, interpreters, etc., for example.

このとき、例えば下記の事項について、マスタユーザーMUによる指定が適宜に可能となっており、APICサイト内のテスト画面で確認しながら満足がいくまでマスタデータの入出力設計の変更ができる構成になされている。
a.入出力の仕様
b.データ整形(順序の変更、見せるデータの選択など)
c.コーディング(プログラムコードの生成・確認)
d.テスト
At this time, for example, the following items can be appropriately specified by the master user MU, and the input / output design of the master data can be changed until it is satisfied while checking on the test screen in the APIC site. ing.
a. Input / output specifications b. Data formatting (change of order, selection of data to be displayed, etc.)
c. Coding (Program code generation / confirmation)
d. test

具体的には、APIの仕様設計としてAPICシステムでは、上述したようにして作成したデータベースに対して、データ入出力を行うための手段として少なくとも下記のようなAPI設計手段を備えている。すなわち、まず上述したデータ登録以外の手段でデータ登録用のAPIを設計・公開することによって、アクセス権のあるユーザーがAPI経由でデータ登録を行えるようにする点である。この場合には、APIC接続端末ソフトウェア上にデータ登録用APIの設計画面を表示し、ユーザーがAPIへの入力時に必要な引数(パラメータ)を設定する。これは、直接データベースのフィールドに対応する場合もあるが、後述する演算処理後にフィールドに保存される場合もある。APICシステムは、上記設定された内容に基づいて、プログラムで動的にユニークなIDによって後からAPIを識別できる状態にし、また設定された仕様を読み出して実行できる状態にして、API仕様保存用データベースへ保存する。   Specifically, as API specification design, the APIC system includes at least the following API design means as means for performing data input / output with respect to the database created as described above. That is, first, an API for data registration is designed and disclosed by means other than the above-described data registration, so that a user with access right can perform data registration via the API. In this case, a data registration API design screen is displayed on the APIC connection terminal software, and the user sets arguments (parameters) necessary for input to the API. This may correspond directly to a field in the database, but may be stored in the field after arithmetic processing described later. Based on the set contents, the APIC system makes the API dynamically identifiable later by a program-specific unique ID, makes the set specification ready to be read and executed, and stores the API specification storage database. Save to

また、本実施形態にかかるAPI設計手段は、上述したようにして登録されたデータに対して、API経由で取得可能とするフィールドをユーザーが自由に設定できる機能を備えている。この場合には、アクセス権のあるユーザーに対して、APIC接続端末ソフトウェア上にフィールド選択画面や使用するデータベース、テーブルを選択する画面を表示し、ユーザーは、データ整形(順序の変更、見せるデータの選択・結合・省略など)方法を画面上のGUI操作等で設定する。また、ユーザーは、データ抽出時の条件指定、集計方法、並べ替え方法、計算方法等を画面上のGUI操作等で設定する。そして、APICシステムは、上記設定された内容に基づいて、プログラムで動的にユニークなIDによって後からAPIを識別できる状態にし、また設定された関数や演算仕様を読み出して実行できる状態にして、API仕様保存用データベースへ保存する。   The API design means according to the present embodiment has a function that allows the user to freely set fields that can be acquired via the API for the data registered as described above. In this case, a field selection screen, a database to be used, and a screen for selecting a table are displayed on the APIC connection terminal software for a user with access right, and the user can format the data (change the order, change the data to be displayed). (Selection / Combination / Omission etc.) The method is set by GUI operation on the screen. In addition, the user sets a condition specification at the time of data extraction, a tabulation method, a rearrangement method, a calculation method, and the like by a GUI operation on the screen. Then, the APIC system is in a state in which the API can be identified later by a program-specific dynamic ID based on the set contents, and in a state in which the set functions and calculation specifications can be read and executed, Save to the API specification storage database.

さらに、APICシステムにおいて、入力データまたは引数に基づいて特定の集計・計算・演算処理等を行いたい場合は、一般的なスクリプト言語等を直接記述するか、専用の言語を提供して計算式や関数をユーザーが独自に設定できる。これによって、単純な“データ登録及びデータ抽出”という仕様だけでなく、データを元に集計結果や独自の演算結果などをAPI経由で出力させることや、データ保存無しで引数に対する演算結果のみをAPI経由で出力させること、或いは独自のアクセス権認証等を行うことが可能となる。また、スクリプト単位での共有や公開も可能とする。そして、アクセス権のあるユーザーに対して、APIC接続端末ソフトウェア上にスクリプト言語記述用の画面を表示し、ユーザーがスクリプト言語のルールに基づいて、自由にスクリプトを記述する。APICシステムは、ユーザーが記述したスクリプトの文法チェック等を行い、間違いがある場合はユーザーにそれを通知し、修正を促す。これに対してユーザーは、チェックを通るようにしたスクリプト言語を保存し、APICシステムが、プログラムで動的にユーザー作成のスクリプトをデータベース保存に適した形式に整形(特殊文字などのエンコード等)すると同時に、後で読み出して実行できるような形式にして、データベースへ保存する。   Furthermore, in the APIC system, when you want to perform specific aggregation / calculation / arithmetic processing etc. based on input data or arguments, you can write a general scripting language directly or provide a dedicated language to calculate The user can set the function independently. This makes it possible to output not only simple “data registration and data extraction” specifications but also aggregated results and unique calculation results based on the data via the API, and only the calculation results for the arguments without saving the data. It is possible to output via the Internet or to perform original access right authentication. It is also possible to share and publish in script units. Then, a script language description screen is displayed on the APIC connection terminal software for a user with access rights, and the user freely describes a script based on the script language rules. The APIC system checks the grammar of the script written by the user, and if there is an error, notifies the user of the error and prompts correction. On the other hand, the user saves the script language that allows the check to pass, and the APIC system dynamically formats the user-created script into a format suitable for database storage (such as encoding special characters). At the same time, it is saved in the database in a format that can be read and executed later.

次に、関数等を有するAPIをテストするにあたってAPICシステムは、ユーザーが自分で設計したAPIをテストし、入出力が期待通りか確認することを可能としている。この場合には、まずアクセス権のあるユーザーに対してAPIC接続端末ソフトウェア上に、APIテスト画面を表示し、ユーザーは自ら設計した任意のAPIを任意の引数で呼び出し、実行結果を画面上で確認する。結果が期待通りでなければ、設計手順に戻りAPI仕様を修正し、再度テストすることとなるが、ユーザーは、上記手順を自作APIが期待通りの動作をするまで繰り返す事ができる。   Next, when testing an API having a function or the like, the APIC system makes it possible to test an API designed by the user and confirm whether the input / output is as expected. In this case, first, an API test screen is displayed on the APIC connection terminal software for users with access rights, the user calls an arbitrary API designed by the user with an arbitrary argument, and the execution result is confirmed on the screen. To do. If the result is not as expected, the process returns to the design procedure, the API specification is corrected, and the test is performed again. However, the user can repeat the above procedure until the user-created API operates as expected.

さらに、ステップ3(図5中のST3)として、関数化等によりAPI化されたマスタデータ、又はそれを用いたデータベースやプログラム(以下において、データ集合体と呼ぶ。)の公開が行われる。上述したようにして関数化等によりAPI化されたデータ集合体は、マスタユーザーMU自身の期待通りの出力がテストで確認された後に公開され、これによって前記マスタデータに基づくデータ集合体の一次利用が行われることとなる。このようなデータ集合体の公開を、予め定められた入出力仕様を有するテンプレートとして公開したり、又はそのようなテンプレートに基づいて公開を行うようにしておけば、後述する開発ユーザーDU等による利用が容易なAPI群が作成されることとなり、また同じものを別々に設計するという社会的な無駄を無くすことが可能となる。   Furthermore, as step 3 (ST3 in FIG. 5), master data converted into API by functioning or the like, or a database or program using the master data (hereinafter referred to as a data aggregate) is disclosed. As described above, the data aggregate converted into API by functionalization or the like is released after the output as expected of the master user MU itself is confirmed by the test, and thereby, the primary use of the data aggregate based on the master data Will be performed. If such a data collection is disclosed as a template having a predetermined input / output specification, or if it is made public based on such a template, it can be used by a development user DU or the like to be described later. API groups can be created easily, and it is possible to eliminate the social waste of designing the same separately.

また、このマスタデータに基づくデータ集合体の一次利用の際、マスタユーザーMUは、利用料や、1日のアクセス上限数などの利用条件や制限条件を設定することが可能となっている。さらに、テーブル内に会員アカウントのフィールドを作成しておくことなどにより自サイトへの会員登録をAPI利用条件とすることも可能である。   In the primary use of the data aggregate based on the master data, the master user MU can set usage conditions and restriction conditions such as a usage fee and a daily access upper limit number. Furthermore, by creating a member account field in the table, it is possible to make the membership registration to the own site an API usage condition.

すなわち、関数化等によりAPI化されたデータ集合体を公開するにあたってユーザーは、自分が設計・公開するAPIの利用条件などを設定できる。設定できる条件は、利用料金、1日のアクセス上限数、広告表示回数、特定ユーザーのみのAPIアクセス権、別途自ら運営するサイトへの会員登録が必須かどうか、など多岐に渡る。具体的には、アクセス権のあるユーザーに対してAPIC接続端末ソフトウェア上に、利用条件設定画面を表示し、ユーザーが画面上のGUI操作等でAPIの利用条件などを設定する。その設定された条件に基づいてAPICシステムは、プログラムで動的にAPI公開条件を特定のデータベースに後で読み出して実行できるような形式にして保存する。実行可能な形式で保存されたAPIは、設計ユーザーによる最終的な承諾の上、APIのアドレスと仕様を、一般ユーザーが閲覧可能なAPICシステム上のAPI閲覧画面に表示し、また実際のAPIのアドレスを公開する。その公開されるAPIのアドレスは、APIの呼び出し形式(REST、SOAP、RPC等)や出力フォーマット(XML,JSON,CSV,テキスト等)によって異なる場合がある。   In other words, when publishing a data aggregate that has been converted to API by functioning or the like, the user can set usage conditions of the API designed and disclosed by the user. The conditions that can be set vary widely, such as the usage fee, the maximum number of accesses per day, the number of advertisements displayed, the API access right only for specific users, and whether membership registration for a site that is separately operated is essential. Specifically, a usage condition setting screen is displayed on the APIC connection terminal software for a user having access rights, and the user sets API usage conditions and the like by a GUI operation on the screen. Based on the set conditions, the APIC system dynamically saves API publishing conditions in a format that can be read and executed in a specific database later by a program. The API saved in an executable format is displayed on the API browsing screen on the APIC system that can be viewed by general users with the final consent of the design user, and the API of the actual API is displayed. Publish your address. The public API address may differ depending on the API call format (REST, SOAP, RPC, etc.) and the output format (XML, JSON, CSV, text, etc.).

そして、次のステップ4(図5中のST4)では、API化されたデータ集合体を利用する開発ユーザーDUによるマスタユーザーMUのAPIを検索・発見・利用決定が行われ、データ集合体の一次利用が行われる。API化されたデータ集合体を検索・発見・利用するにあたっては、例えば、まず利用条件を考慮してAPI利用が決定され、そのAPI利用決定がマスタユーザーMUに通知される。そのときのAPI利用状況(人気APIランキングなど)やAPIを利用しているサイトのサーチエンジン等は、APICサイトにて閲覧可能となっている。   In the next step 4 (ST4 in FIG. 5), the API of the master user MU is searched, discovered and used by the development user DU using the API data aggregate, and the primary of the data aggregate is determined. Use is done. When searching / discovering / using an API data set, for example, API usage is first determined in consideration of usage conditions, and the API usage decision is notified to the master user MU. The API usage status (popular API ranking, etc.) at that time and the search engine of the site using the API can be browsed on the APIC site.

すなわち、関数化等によりAPI化されたデータ集合体のアクセスや実行にあたってAPICシステムでは、上述したようにして設計・データ登録・利用条件設定し、公開したAPIを、外部からコールされた時に、API仕様・利用条件設定に基づいてデータを入出力する事が出来るようにしている。ユーザーが設計した仕様によって様々なタイプのAPIが出来るが、その例としてデータ登録系、データ抽出系、演算系を記載しておく。データ登録系APIの場合には、引数で指定された入力データを設計仕様に基づいてプログラムで動的に整形(演算や文字列操作等)を行い、API呼び出し側へ実行結果応答し、必要なデータをデータベースへ保存する。また、データ抽出系APIの場合には、引数で指定された抽出条件などから、設計仕様書に基づいてプログラムで動的にデータベース検索、並べ替え等を行い、実行結果をAPI呼び出し側へ返す。さらに演算系APIの場合には、引数で指定されたデータ(数値、文字、画像/音声/ビデオや、その他データファイル等)に対して設計仕様に基づいた特定の計算、文字列処理、画像処理などを行い、実行結果をAPI呼び出し側へ返す。   That is, in accessing and executing a data aggregate converted into API by functioning or the like, the APIC system sets the design / data registration / use conditions as described above, and when the published API is called from the outside, the API Data can be input and output based on specifications and usage condition settings. Various types of APIs can be created depending on the specifications designed by the user. Examples of this include a data registration system, a data extraction system, and an arithmetic system. In the case of a data registration system API, the input data specified by the argument is dynamically formatted (calculation, character string operation, etc.) by the program based on the design specifications, and the execution result response is sent to the API caller. Save the data to the database. In the case of the data extraction API, the database is dynamically searched and rearranged by the program based on the design specification based on the extraction condition specified by the argument, and the execution result is returned to the API caller. Furthermore, in the case of an arithmetic API, specific calculations based on design specifications, character string processing, image processing for data (numerical values, characters, images / audio / video, other data files, etc.) specified by arguments And return the execution result to the API caller.

この後のステップ5(図5中のST5)においては、まず関数化等によりAPI化されたデータ集合体の開発ユーザーDUによる2次利用が行われる。開発ユーザーDUは、マスタユーザーMUのAPIを利用してデータ取得することによって、独自のマッシュアップ・サイトや、マッシュアップソフトウェアMSWを開発し、それらをブログパーツやガジェットなどとして公開する。このときのマッシュアップ・サイトやマッシュアップソフトウェアMSWには他のAPI化されたデータ集合体が含まれている場合もある。また、開発ユーザーDUが、マスタユーザーMUのAPI化されたデータ集合体APIを利用して独自に別のマッシュアップAPIを開発し公開する場合もある。   In subsequent step 5 (ST5 in FIG. 5), the development user DU first uses the data aggregate converted into API by functioning or the like. The development user DU uses the API of the master user MU to acquire data, thereby developing an original mashup site and mashup software MSW, and publishing them as blog parts and gadgets. The mashup site and the mashup software MSW at this time may include other data aggregates converted into APIs. Further, the development user DU may independently develop and publish another mashup API using the API of the master user MU converted to data.

また、ステップ6(図5中のST6)では、サイト運営者SAによる関数化等によりAPI化されたデータ集合体の3次利用が行われる。すなわち、一般的なサイト運営者SAによって、上述した開発ユーザーDU又はサイト運営者SAに自身により開発されたマッシュアップソフトウェアMSW又はマッシュアップAPI(MAPI)を利用して自サイトが作成され、それが一般に公開されることによってAPI化されたデータ集合体の3次利用が行われる。   Further, in step 6 (ST6 in FIG. 5), tertiary use of the data aggregate converted to API by functioning by the site operator SA or the like is performed. That is, a general site operator SA creates its own site by using the mashup software MSW or mashup API (MAPI) developed by the development user DU or the site operator SA as described above. The third use of the data aggregate converted into an API by being disclosed to the public is performed.

なお、上述したマッシュアップAPI(MAPI)にさらに別のマッシュアップAPI(MAPI)が組み込まれて4次利用されたり、それらが何重にも組み込まれて5次利用されるなど、次のステップ7(図5中のST7)のように最終のエンドユーザーに届くまでデータの利用次元は増えていくこととなる。   It should be noted that the following step 7 includes another mashup API (MAPI) incorporated into the above-described mashup API (MAPI) for quaternary use, or multiple mashup APIs (MAPI) for quaternary use. As shown in (ST7 in FIG. 5), the data use dimension increases until it reaches the final end user.

そして、ステップ7(図5中のST7)では、最終的なエンドユーザーによって、マッシュアップソフトウェアMSWを有するマッシュアップ・サイトや、サイト運営者SAのサイト等を通じてマスタデータの閲覧又は利用が行われ、それによってマスタデータの末端利用が行われる。   In step 7 (ST7 in FIG. 5), the final end user browses or uses the master data through the mashup site having the mashup software MSW, the site of the site operator SA, etc. Thereby, the end use of the master data is performed.

このような実施形態によれば、多数の一般ユーザーMUが自身で保有しているデータをAPICサーバー内にマスタデータとして登録するだけで、その登録された一般ユーザーのデータが、自動API生成手段12,32によりデータベース化されるとともに、生成されるAPIを通じて適宜の出力状態として、第三者による閲覧又は利用が容易なデータ又はプログラムとしてネットワーク上に公開されるために、元々は一般ユーザーの手元に秘蔵されようとしていたデータが、開発ユーザーDUやサイト運営者SAによって容易かつ広範囲に利用されることとなり、情報の拡散が飛躍的に図られるようになっている。   According to such an embodiment, simply registering data owned by a large number of general users MU as master data in the APIC server, the registered general user data is converted into the automatic API generation means 12. , 32 as a database, and as an appropriate output state through the generated API, it is released on the network as data or a program that can be easily viewed or used by a third party. The data that was about to be treasured will be easily and widely used by the development user DU and the site operator SA, and the spread of information will be dramatically improved.

次に、本発明にかかるAPICシステム(情報利用システム)を使用したAPICサイト(Application Program Interface Creator Site)を実際に適用した実施例について説明する。   Next, an embodiment in which an APIC site (Application Program Interface Creator Site) using the APIC system (information utilization system) according to the present invention is actually applied will be described.

まず、図15に示されている第1の実施例は、マスタデータユーザーMUとして“A町の魚屋”を想定したものであって、その場合のデータの流れと広がりを以下に説明する。なお、このマスタデータユーザーMUとしての“A町の魚屋”は、前述したAPICシステムの自動API生成ツール12,32を通して、関数、プロシージャ、変数、データ構造、又はインタプリタなどに関するAPIを既に公開しているものとし、ある程度の数の開発ユーザーDUや、サイト運営者SAによってデータの利用が行われている事を前提とする。   First, the first embodiment shown in FIG. 15 assumes “fish shop in A town” as the master data user MU, and the data flow and spread in that case will be described below. The “A town fish shop” as the master data user MU has already published APIs related to functions, procedures, variables, data structures, or interpreters through the automatic API generation tools 12 and 32 of the APIC system described above. It is assumed that the data is used by a certain number of development users DU and the site operator SA.

まず、最初のステップ11で魚のデータが登録される。すなわち、マスタユーザーとしてのA町の魚屋MUは、APICサイトにアクセスして仕入れた魚のデータをAPI作成サーバーに登録する。このときの登録は、例えば下記の表1のように仕入れ/売値を決定して行われることとなるが、そのようなマスタデータの登録又は更新によって、APIからの出力データが自動的に更新される。   First, fish data is registered in the first step 11. That is, the fish shop MU in A town as a master user registers the fish data purchased by accessing the APIC site in the API creation server. The registration at this time is performed, for example, by determining the purchase / sale price as shown in Table 1 below, but the output data from the API is automatically updated by such registration or update of the master data. The

Figure 2011258101
Figure 2011258101

次のステップ12で、API作成サーバーによりAPI設計が行われてマスタデータを抽出及び出力するプログラム、すなわち魚屋APIの公開が行われる。この第1の実施例においては、例えば、下記のような項目を内容とするマスタデータのデータベースの公開が行われるようにAPIの設計がなされている。
a.名称: A-machi_Fish_Search
b.説明: 今日仕入れた新鮮な魚介類情報を配信する!
c.入力: 名前、販売価格上限、キーワード、ソート順(名前または価格)
d.出力: 名前、販売価格、コメント、写真
e.利用条件: 無料
このようなマスタデータのデータベースに関する入出力設計が、API作成サーバー内の自動API生成ツール12,32により自動で行われる。
In the next step 12, API design is performed by the API creation server, and a program for extracting and outputting master data, that is, a fish shop API is released. In the first embodiment, for example, the API is designed so that a master data database containing the following items is disclosed.
a. Name: A-machi_Fish_Search
b. Description: Deliver fresh seafood information purchased today!
c. Input: Name, Sales price limit, Keyword, Sort order (name or price)
d. Output: Name, Sales Price, Comment, Photo e. Use conditions: Free The input / output design related to the database of such master data is automatically performed by the automatic API generation tools 12 and 32 in the API creation server.

そして、ステップ13(ST13)において、上述したようにAPI化されて公開されたマスタデータのデータベースからデータを抽出するAPI(魚屋API)への要求が、個人プログラマ等の開発ユーザーDUにより行われ、その開発ユーザーDUによってマッシュアップソフトウェアMSWの構築・公開が行われる。より具体的には、上述したようにしてAPICサイトからマスタデータを出力する魚屋API(A-machi_Fish_Search)や、その他のAPIを利用して、例えばA町商店街全体に関するホームページパーツやデスクトップガジェット等のマッシュアップソフトウェアMSWが構築され公開される。   Then, in step 13 (ST13), a request for an API (fish shop API) that extracts data from the database of the master data published as an API as described above is made by a development user DU such as an individual programmer, The development user DU builds and discloses the mashup software MSW. More specifically, using the fish shop API (A-machi_Fish_Search) that outputs master data from the APIC site as described above, and other APIs, for example, homepage parts and desktop gadgets for the entire A town shopping street, etc. Mashup software MSW is constructed and released.

さらに、次のステップ14(ST14)においては、サイト運営者SAによるマッシュアップソフトウェアMSWの構築・公開が行われる。例えば、上述した個人プログラマDUのマッシュアップソフトウェアMSWや、その他のAPIを利用したマッシュアップソフトウェアMSW等を組み込んで、例えば、”A町グルメサイト”が構築され公開される。   Further, in the next step 14 (ST14), the mashup software MSW is constructed and disclosed by the site operator SA. For example, the above-mentioned mashup software MSW of the individual programmer DU and mashup software MSW using other APIs are incorporated, and for example, “A town gourmet site” is constructed and released.

一方、ステップ15(ST15)では、開発ユーザーDU又はサイト運営者SAによるマッシュアップ・サイトの構築・公開が行われる。このマッシュアップ・サイトでは、上述した魚屋API(A-machi_Fish_Search)や、その他のAPIを利用して、例えば”全国魚屋さん情報サイト”が構築され公開される。   On the other hand, in step 15 (ST15), the development user DU or the site operator SA constructs and discloses a mashup site. In this mashup site, for example, a “national fish shop information site” is constructed and released using the fish shop API (A-machi_Fish_Search) described above and other APIs.

このような”A町グルメサイト”や”全国魚屋さん情報サイト”が公開されると、例えばステップ16(ST16)において、個人消費者(一般ユーザー)による利用が行われる。すなわち、個人消費者(一般ユーザー)は、上述した開発ユーザーDUのデスクトップガジェットを利用してA町商店街のデータをチェックして日々のお買い物に役立て、例えば、「今日は魚屋さんの”鯛切り身”がお買い得」という情報を得ることによって購入を決定する。   When such “A town gourmet site” and “Nationwide fish shop information site” are released, for example, in step 16 (ST16), use by an individual consumer (general user) is performed. That is, an individual consumer (general user) checks the data of the A town shopping street by using the desktop gadget of the development user DU described above to help with daily shopping. The purchase is decided by obtaining information that the fillet is “bargain”.

また、ステップ17(ST17)では、B町のイタリアンレストラン(一般ユーザー)による利用が行われる。例えば、B町のイタリアンレストランでは、日常的にA町グルメサイトのチェックが行われており、ある日、A町の魚屋さんのデータに注目して、その仕入先としての提携を決定する。   In step 17 (ST17), the use is performed by an Italian restaurant (general user) in town B. For example, in an Italian restaurant in B town, the A town gourmet site is checked on a daily basis, and one day, focusing on the data of fish shop in A town, the partnership as the supplier is decided.

さらに、ステップ18(ST18)では、C町の寿司屋(一般ユーザー)による利用が行われる。例えば、C町の寿司屋では、日常的に全国魚屋さんサイトでより良い仕入先を探しており、ある日、A町の魚屋のデータに注目して、その仕入先としての提携を決定する。   Further, in step 18 (ST18), use is performed by a sushi restaurant (general user) in C town. For example, a sushi restaurant in C town is looking for a better supplier on a nationwide fish shop site on a daily basis, and one day, paying attention to the data of the fish shop in A town, and decided to partner with that supplier To do.

一方、図16に示されている第2の実施例は、“タクシー運転者の現在位置”を想定したものである。ここでも、既にタクシー運転者の現在位置データを登録する為のAPIが設計されて公開されていることを前提とする。   On the other hand, the second embodiment shown in FIG. 16 assumes the “current position of the taxi driver”. Here again, it is assumed that an API for registering the current position data of the taxi driver has already been designed and published.

まず、最初のステップ21において、各タクシー運転者の現在位置のデータが登録される。すなわち、マスタユーザーとしてのタクシーA,B,Cは、APICサイトにアクセスして現在位置のデータをAPICシステムのAPI作成サーバーにマスタデータとして登録する。   First, in the first step 21, data on the current position of each taxi driver is registered. That is, taxis A, B, and C as master users access the APIC site and register the current location data as master data in the API creation server of the APIC system.

次のステップ22(ST22)では、API作成サーバーにより既に設計・公開されているAPI、すなわちタクシー運転者APIを通じてマスタデータのデータベースの公開が行われる。そして、ステップ23(ST23)において、上述したようにAPI化されて公開されたマスタデータのデータベースを参照する為のAPI(タクシー運転者API)への要求が、個人プログラマ等の開発ユーザーDUにより行われ、その開発ユーザーDUによってマッシュアップソフトウェアMSWの構築・公開が行われる。より具体的には、上述したようにしてAPICサイトからマスタデータを出力するタクシー運転者APIや、その他のAPIを利用して、例えばタクシー運行に関するホームページパーツやデスクトップガジェット等のマッシュアップソフトウェアMSWが構築され公開される。   In the next step 22 (ST22), the master data database is released through the API already designed and published by the API creation server, that is, the taxi driver API. Then, in step 23 (ST23), a request to the API (taxi driver API) for referring to the database of the master data published as an API as described above is made by the development user DU such as an individual programmer. The mashup software MSW is constructed and released by the development user DU. More specifically, as described above, mashup software MSW such as homepage parts and desktop gadgets related to taxi operation is constructed using a taxi driver API that outputs master data from the APIC site and other APIs. And published.

さらに、次のステップ24(ST24)においては、サイト運営者SAによるマッシュアップソフトウェアMSWの構築・公開が行われる。例えば、上述した個人プログラマDUのマッシュアップ・サイトMSWや、その他のAPIを利用したマッシュアップソフトウェアMSW等を組み込んで、例えば、”全国タクシー運行状況ガイド”が構築され公開される。   Further, in the next step 24 (ST24), the mashup software MSW is constructed and disclosed by the site operator SA. For example, by incorporating the above-described mashup site MSW of the individual programmer DU and mashup software MSW using other APIs, for example, a “national taxi operation status guide” is constructed and released.

このような”全国タクシー運行状況ガイド”が公開されると、例えばステップ25(ST25)において、個人消費者(一般ユーザー)による利用が行われる。すなわち、個人消費者やホテル等の一般ユーザーは、タクシー運行状況をチェックして日々の利用に役立てる。   When such a “national taxi service status guide” is released, for example, in step 25 (ST25), it is used by an individual consumer (general user). That is, a general consumer such as an individual consumer or a hotel checks the taxi operation status and uses it for daily use.

一方、前述した図3に表されたAPI作成サーバー1に、利用したユーザーに適宜の広告を配信する広告配信手段を設けてAPICシステムとすることが可能である。そして、その場合の広告配信手段としては、例えば、自動API生成ツール12,32により作成されたデータベースを閲覧又は利用したユーザーに対して、そのユーザーが閲覧又は利用したデータベースの内容に対応した内容の広告を配信する構成とすることができる。例えば、図17に示されている実施形態にかかるAPICシステムでは、API作成サーバー1からAPIデータを取得したデータ利用サイト(ユーザー)4に対して、そのデータ利用サイト4が取得したAPIデータの内容に関連する広告が、前記API作成サーバー1に設けられた広告配信手段13から同時に配信されるようになっている。   On the other hand, the API creation server 1 shown in FIG. 3 described above can be provided with an advertisement distribution means for distributing an appropriate advertisement to a user who has used the API creation server 1. And as an advertisement delivery means in that case, the content corresponding to the content of the database which the user browsed or used for the user who browsed or used the database created by the automatic API generation tools 12 and 32, for example. An advertisement can be distributed. For example, in the APIC system according to the embodiment shown in FIG. 17, the content of the API data acquired by the data usage site 4 for the data usage site (user) 4 that acquired the API data from the API creation server 1. The advertisement related to the above is simultaneously distributed from the advertisement distribution means 13 provided in the API creation server 1.

本実施形態にかかるAPICシステムは、最小単位としてメタデータのレベルからデータそのものに広告を配信する広告配信システム(広告配信手段)を有しており、そのAPICシステムの広告配信システム13を使用したデータへの広告配信は、例えば図18のようにして行われる。すなわち、広告主が、広告データの内容をキーワードとともに登録しておくと、広告配信手段としての広告配信システム内で、広告データ内容や登録されたキーワードを基に、必要な相関関係などのデータ解析が行われて最適な広告が選択され、一般利用者またはマッシュアップ層からのAPIコール(図示省略)の応答結果として出力されるデータに合成してAPICシステムから出力される。また、そのときの出力段にパス切り替えの仕組みを入れることによって、API仕様や利用ユーザーのアクセス権あるいは属性等に応じて広告の有無を切り替え、データのみ又は広告合成済みデータのどちらでも出力することが可能となる。   The APIC system according to the present embodiment has an advertisement distribution system (advertisement distribution means) that distributes advertisements from the metadata level to the data itself as a minimum unit, and data using the advertisement distribution system 13 of the APIC system. The advertisement distribution to is performed as shown in FIG. 18, for example. In other words, if the advertiser registers the contents of the advertisement data together with the keywords, data analysis such as necessary correlation is performed based on the contents of the advertisement data and the registered keywords in the advertisement distribution system as an advertisement distribution means. And an optimal advertisement is selected, combined with data output as a response result of an API call (not shown) from a general user or a mashup layer, and output from the APIC system. In addition, by including a path switching mechanism in the output stage at that time, the presence / absence of advertisement is switched according to API specifications, user access rights or attributes, etc., and either data alone or advertisement synthesized data is output. Is possible.

このような構成を採用すれば、特定の情報を必要としているユーザーに対して、当該ユーザーが必要としている情報に対応した内容の広告が配信されることとなり、広告配信者にとっては無駄な広告配信が低減され、ユーザーにとっても必要な情報がさらに得られることとなる。   If such a configuration is adopted, advertisements with contents corresponding to the information required by the users will be distributed to users who need specific information, which is useless advertisement distribution for advertisement distributors. As a result, information necessary for the user can be further obtained.

再び図17に戻って、上述したような広告配信手段13に加えて、APICシステムのAPI作成サーバー1には、データ提供者への対価を決定する利用者還元手段14を設けることも可能である。すなわち、この場合の利用者還元手段14は、前記自動API生成ツール12,32により作成されたデータベースの閲覧又は利用の頻度に対応して、そのデータベースのデータ提供者2(MU)への対価を決定する機能を有している。図17に示されている実施形態の場合には、上述したデータ利用サイト4で発生した広告収入や収益の一部が、API作成サーバー1に設けられた利用者還元手段14からデータ提供者2(MU)に還元されるようになっている。   Referring back to FIG. 17, in addition to the advertisement distribution means 13 as described above, the API creation server 1 of the APIC system can be provided with a user return means 14 for determining the price to the data provider. . That is, the user return means 14 in this case corresponds to the data provider 2 (MU) of the database corresponding to the frequency of browsing or using the database created by the automatic API generation tools 12 and 32. It has a function to decide. In the case of the embodiment shown in FIG. 17, a part of the advertising revenue and revenue generated at the data usage site 4 is transferred from the user return means 14 provided in the API creation server 1 to the data provider 2. Reduced to (MU).

より具体的には、前述したように広告主は、広告データの登録とともに広告料の支払いを利用者還元手段14に対して行うが、一般利用者は、図19に示されているように、直接的又はマッシュアップソフトウェアMSWを有するマッシュアップ・サイトを通して間接的にAPICシステムにアクセスし、そこでユーザー認証が行われる。なお、マッシュアップ・サイトが代理でユーザー認証を行う場合は、一般ユーザーによる認証手順は省かれてもよい場合がある。APICシステムでは、前述したように個々のユーザーが所有する個別のマスタデータを適宜に集合させてAPI化し、そのAPI化した各データ集合体であるAPI(API_1,API_2,・・・,API_n)をネットワーク上で公開している。そして、上記認証したユーザー情報を元に、一般ユーザーによるアクセス要求対象のAPIに関する利用条件をAPI利用条件DBから取得し、該当一般ユーザーがアクセス要求しているAPI(API_1,API_2,・・・,API_n)へのアクセス権限を有しているか、または利用回数制限に達していないか等をチェックする。   More specifically, as described above, the advertiser pays the advertisement fee to the user return means 14 together with the registration of the advertisement data. However, as shown in FIG. The APIC system is accessed directly or indirectly through a mashup site having mashup software MSW, where user authentication is performed. If the mashup site performs user authentication on behalf of the user, the authentication procedure by a general user may be omitted. In the APIC system, as described above, individual master data possessed by each user is appropriately gathered into APIs, and APIs (API_1, API_2,..., API_n) that are the data aggregates obtained by the APIs. Published on the network. Then, based on the authenticated user information, a usage condition related to an API requested by a general user is acquired from the API usage condition DB, and the API (API_1, API_2,... It is checked whether the user has access authority to API_n) or the usage count limit has not been reached.

このときに、前記利用者還元手段としての利用者還元システム層は、API利用状況やAPI利用条件を元にして一般利用者やマッシュアップユーザーへの利用料金額を算出し、それと同時にデータ提供者、API使用作成者、マッシュアップユーザー等へ配分金額を決定し、各々に対する還元を実行する。   At this time, the user return system layer as the user return means calculates the usage fee amount for general users and mashup users based on the API usage status and API usage conditions, and at the same time the data provider , API usage creators, mashup users, etc., determine the amount of money to be allocated, and execute a return for each.

なお、利用条件が設定されていないAPIの場合は、上述した手順は省かれてもよい場合がある。例えば、API仕様作成者の判断で、利用条件は利用ユーザー毎に設定可能とされてマッシュアップユーザーに対する割引等が設定されていれば、マッシュアップユーザーはデータの取得価格と自作マッシュアップの利用料をコントロールすることにより利益を得る事が可能となる。このときのAPI利用条件によっては、発生する収入源が広告料のみや利用料のみとなる場合がある。   In the case of an API for which usage conditions are not set, the above-described procedure may be omitted. For example, if the API specification creator decides that the usage conditions can be set for each user and a discount is set for the mashup user, the mashup user can acquire the data acquisition price and the usage fee for the self-made mashup. Profits can be gained by controlling. Depending on the API usage conditions at this time, the revenue source generated may be only the advertising fee or the usage fee.

このような構成を採用すれば、閲覧又は利用の頻度が高いデータを提供したデータ提供者2(MU)に対して、提供データの閲覧又は利用の頻度に対応した対価が支払われることとなり、一般ユーザーから、より利用度の高い価値あるデータがより多く提供されることとなる。   If such a configuration is adopted, the compensation corresponding to the frequency of browsing or using the provided data will be paid to the data provider 2 (MU) that provided the data that is frequently viewed or used. More valuable data with higher utilization will be provided by the user.

次に、前述した自動API生成ツール(APIクリエイター;APIC)を備えたAPICシステムを利用してAPI(関数、プロシージャ、変数、データ構造又はインタプリタなど)を公開することによって、テンプレート等からなるデータ集合体に対する対価を決定し、データ集合体の売買を可能とする情報利用システムの実施形態について説明する。   Next, the API (function, procedure, variable, data structure, interpreter, etc.) is disclosed using the APIC system equipped with the automatic API generation tool (API creator; APIC) described above, and a data set including templates and the like. An embodiment of an information utilization system that determines a price for a body and enables a data aggregate to be bought and sold will be described.

前述したようにAPICシステムは、テンプレート機能を有していて、マスタユーザーが作成したデータベース構造やAPI仕様をテンプレートとして公開し、他のユーザーがそれに参加する事によって、同様のAPIの乱立という社会的無駄を無くし、同一構造仕様のデータ量が増え、マッシュアップもし易くなる為、データ流動性が高くなるという効果が得られると期待されるものであるが、テンプレート機能を提供するAPICシステムによるデータ集合体の売買を可能とする情報利用システムの一例が、図20に示されている。   As described above, the APIC system has a template function, and the database structure and API specifications created by the master user are published as templates, and other users participate in it. It is expected to have the effect of increasing the data fluidity because it eliminates waste, increases the amount of data with the same structural specification, and facilitates mashup, but it is expected that the data collection by the APIC system that provides the template function FIG. 20 shows an example of an information use system that enables the body to be bought and sold.

すなわち、図20に示されている情報利用システムは、データ集合体のうちのテンプレートを媒介としてデータを流通させ、又はテンプレートを売買するように構成されており、当該テンプレート流通システムにおいて、ユーザーは、API仕様を考案してテンプレートとして公開するユーザーと、他ユーザーのテンプレートに参加してデータ登録者として貢献するユーザーの2種類のユーザーに分類される。ここでは、末端の一般利用者はユーザーの範疇から外すこととしているが、API仕様作成マスタユーザーがデータの末端一般利用者である場合もある。   That is, the information utilization system shown in FIG. 20 is configured to distribute data or buy and sell templates through a template of the data aggregate. In the template distribution system, the user There are two types of users: users who devise API specifications and publish them as templates, and users who participate in templates of other users and contribute as data registrants. Here, the end general user is excluded from the user category, but the API specification creation master user may be the end user of the data.

また、本実施形態では、広告主(イ)及び広告主(ロ)が、テンプレートAとして公開されたAPI群のデータ(API_A1,API_A2,・・・,API_An)に対して広告を配信する対価として広告料を支払い、それが前述した利用者還元システムによって、データ提供者(1)、データ提供者(2)及びデータ提供者(3)又はAPI仕様作成マスタユーザー(A),(B)に対して、データ量・データ提供頻度・APIによるデータ被抽出回数またはその有用性等に応じて広告料からの還元額が分配される構成になされている。   Further, in this embodiment, the advertiser (b) and the advertiser (b) are paid for distributing advertisements to API group data (API_A1, API_A2,..., API_An) published as template A. Paying the advertising fee, it is to the data provider (1), the data provider (2) and the data provider (3) or the API specification creation master user (A), (B) by the above-mentioned user return system Thus, the return amount from the advertising fee is distributed according to the amount of data, the frequency of data provision, the number of times of data extraction by API or the usefulness thereof.

テンプレートBとして公開されたAPI群のデータの場合は、テンプレート作成者と末端の一般利用者が同一となっている。この場合には、利用者の立場として利用料を支払うとともに、テンプレート作成者の立場として利用者還元システムによって還元を受けるという流れになる。また、当然、データ提供者(4)、データ提供者(5)に対する対価も利用者還元システムによって分配される。   In the case of API group data published as template B, the template creator and the end general user are the same. In this case, the user fee is paid as a user's position and the user is returned by the user return system as a template creator. Naturally, consideration for the data provider (4) and the data provider (5) is also distributed by the user return system.

本実施形態におけるAPIクリエイターを有するAPICシステムを用いたテンプレート売買システム又はテンプレートによるデータ流通システムでは、特定のテンプレートを作成・公開する環境を提供することによって、データやテンプレートの売買や広告表示、又は参加者への還元などが可能となり、それに伴って、様々なテンプレートで様々なお金の流れが誕生する。そして、データベース構造とAPI仕様、つまりテンプレートが異なれば、データ利用料金や参加者の業種、性別、趣味、職業、団体/個人などの属性や、広告主の属性も異なることとなるため、企業から個人、個人から個人、個人から企業、男性から女性、流通業界から製造業界等のように当然お金の流れも変わってくる。APICシステムが提供するこのようなテンプレートや、テンプレートに関するデータの売買システム、又はデータ流通システムによって、全ての参加者(広告主、マスタユーザー、利用者など)の間で発生するお金の流れや分配方法を参加者自らが自由に設定することができることとなる。そして、テンプレート自体を受け渡したり、それらの各テンプレートに関するデータを受け渡す種々の段階においてマージンを取得することによって多様な収益性が設定可能となる。   In the template trading system using the APIC system having the API creator in this embodiment or the data distribution system using the template, by providing an environment for creating and publishing a specific template, buying and selling data and templates, displaying advertisements, or participating As a result, various money flows are born with various templates. And if the database structure and API specifications, that is, the templates are different, the attributes of data usage fees, participants' industry, gender, hobbies, occupations, groups / individuals, etc., and advertiser attributes will also differ. Naturally, the flow of money will change, such as individuals, individuals to individuals, individuals to companies, men to women, and distribution industries to manufacturing industries. The flow and distribution method of money generated among all participants (advertisers, master users, users, etc.) by such a template provided by the APIC system, a data trading system for the template, or a data distribution system The participants themselves can set up freely. A variety of profitability can be set by acquiring margins at various stages of transferring the templates themselves or transferring data related to each of the templates.

そのときの課金は、例えば図21に示されているようして多様に行われる。まず、1)複数のデータ登録ユーザーの場合には、マスタユーザーのうちのAPI化されたテンプレートを所有するテンプレートオーナーが求めるデータを提供する際に、末端ユーザーやマッシュアップユーザーによる利用に対する課金が行われて上述した利用者還元システムにより支払いを受ける。さらに、2)複数のテンプレートオーナーが所有する複数のテンプレートA,B,C,・・・が、それらを利用したいユーザー(マッシュアップソフトウェアオーナー)に提供される際に課金が行われることによってテンプレートオーナーは支払いを受ける。さらに、3)マッシュアップソフトウェアオーナーによりテンプレートが組み合わされることなどにより作成されたアプリケーションやテンプレート等は、それらのテンプレート等を利用したいユーザー(一般利用者)に提供され、個別にまたは組み合わされてサイトなどに利用されるが、その提供の際の課金によってマッシュアップソフトウェアオーナーに対する支払いが行われる。   Charges at that time are variously performed as shown in FIG. 21, for example. First, 1) In the case of a plurality of registered data users, the usage by end users and mashup users is charged when providing the data required by the template owner who owns the APIized template among the master users. We are paid by the above-mentioned user return system. 2) Template owners are charged when a plurality of templates A, B, C,... Owned by a plurality of template owners are provided to a user who wants to use them (mashup software owner). Get paid. 3) Applications and templates created by combining templates with mashup software owners are provided to users who want to use those templates (general users), and sites are created individually or in combination. The payment is made to the mashup software owner by charging at the time of provision.

また、図22に示されているように、データ集合体が移動する各段階において広告が合成されるように構成することも可能であり、その場合の課金は、例えば図23に示されているようにして利用者還元システム/課金システムにより行われる。なお、広告主が配信する広告は、最終的には端末一般利用者へ到達するという観点から、本実施形態においては、広告主からの広告配信を端末一般利用者として表しているが、実際に広告が合成される場所は、最小単位データ毎やAPI呼出しに対する応答出力毎など多岐に渡る。   Further, as shown in FIG. 22, it is also possible to configure the advertisement to be synthesized at each stage where the data aggregate moves, and charging in that case is shown in FIG. 23, for example. In this way, it is performed by the user return system / billing system. In this embodiment, the advertisement distributed from the advertiser is represented as the terminal general user in the present embodiment from the viewpoint that the advertisement distributed by the advertiser eventually reaches the terminal general user. There are various places where advertisements are synthesized, such as every minimum unit data and every response output for API calls.

このようなテンプレートに関する課金システムを備えたAPICシステムを機能的に表したものが図24である。図24には、ある販売サイトの商品に対するカスタマーレビューを用いた実施形態における課金と還元の流れが示されているが、テンプレート、データ、お金の流れを説明するために、広告に関する記述や、データベース等については省略している。本実施形態におけるユーザーは、API仕様を考案してテンプレートとして公開する「API仕様作成マスタユーザー」と、当該「API仕様作成マスタユーザー」が公開した「カスタマーレビュー」テンプレートに参加してデータを提供・登録する「データ提供ユーザー」(つまり、カスタマーレビューを書く人)と、登録されたデータを自サイトで利用する「商品販売サイト」と、「商品販売サイト」の「顧客」と、からなり、次のa)〜f)の各ステップからなる流れでのデータとお金の循環が行われる。   FIG. 24 shows a functional representation of an APIC system having such a billing system for templates. FIG. 24 shows the flow of charging and returning in the embodiment using the customer review for the product of a certain sales site. In order to explain the flow of the template, data, and money, a description about the advertisement and the database Etc. are omitted. The user in this embodiment provides data by participating in an “API specification creation master user” that devises an API specification and publishes it as a template, and a “customer review” template published by the “API specification creation master user”. It consists of a "data providing user" to register (that is, a person who writes a customer review), a "product sales site" that uses the registered data on its own site, and a "customer" of the "product sales site". The data and money are circulated in the flow comprising the steps a) to f).

a)API仕様作成マスタユーザーがAPICサイトにてカスタマーレビューテンプレートを作成および公開する。
b)上記テンプレートに対して、データ提供ユーザーが各自のカスタマーレビューデータを登録する。
c)商品販売サイトがAPICサイト経由でカスタマーレビューデータを取得し、例えば「メーカー名」、「型番」、「商品名」、「発売日」、「定価」、「レビュー内容」等を自サイトにて掲載する。
d)商品販売サイトの顧客がカスタマーレビューデータを閲覧して、商品を購入する。
e)商品販売サイトがAPICサイトの課金システムにてカスタマーレビューデータの利用料金を支払う。
f)課金された料金から、データの利用頻度等に応じて利用者還元システムによって、データ提供者とマスタユーザーへ還元が行われる。
a) API specification creation master user creates and publishes a customer review template on the APIC site.
b) Each data providing user registers their customer review data for the template.
c) The product sales site acquires customer review data via the APIC site. For example, “Manufacturer name”, “model number”, “product name”, “release date”, “list price”, “review contents”, etc. Posted.
d) A customer of a product sales site browses customer review data and purchases a product.
e) The merchandise sales site pays the usage fee for the customer review data using the billing system on the APIC site.
f) From the charged fee, the data is returned to the data provider and the master user by the user return system according to the data use frequency or the like.

上述したように、本実施形態にかかるテンプレート売買システムは、テンプレート以外のデータ集合体の提供にも同様に適用されるものであり、テンプレート以外のメタデータやマッシュアップソフトウェア等のデータ集合体を売買対象とすることも可能である。つまり、前述した1)〜3)にて登録及び公開されたデータ(Data)、テンプレート、アプリケーションなどに対する課金は、各々の所有者によりAPIシステムを介在した、いわゆるAPIマーケットでの売買で行われることとなる。   As described above, the template trading system according to the present embodiment is similarly applied to the provision of data aggregates other than templates, and buys and sells data aggregates such as metadata other than templates and mashup software. It is also possible to target. In other words, the charges for the data (data), templates, applications, etc. registered and disclosed in the above 1) to 3) should be made by the respective owners by buying and selling in the so-called API market through the API system. It becomes.

すなわち、このデータ集合体の提供の各段階においてAPI売買を可能とするAPIマーケットは、例えば図25に示されているように、APICシステムに対して登録されたデータ群、テンプレート群、マッシュアップソフトウェア群などからなるデータ集合体を第三者が無料若しくは有料にてそれらを利用可能とする機能を有している。そして、そのようなAPIマーケットは、第1の特徴点として、データ(Data)及びマッシュアップソフトウェア(Mashup Softwear)の登録・作成者の販売流通を可能とする機能を有している。従来では、ネットワーク上に誰がどのようなデータなどを所有しているのかを探し出し、それを利用する際にはデータのオーナーにその都度、了承をもらう必要があったが、本実施形態にかかるAPIマーケットでは、データ及びマッシュアップソフトウェアのオーナーと、それらのデータ及びマッシュアップソフトウェアを利用したいユーザーとを簡易的に結びつけることが可能となり、かつデータ及びマッシュアップソフトウェアの権利はオーナーであるとことが明確化され、ダウンロード毎に課金を可能にすること等によって、権利保持したまま、或いは権利を開放して、二次利用を可能にする。   In other words, the API market that enables API trading at each stage of providing this data aggregate includes, for example, a data group, a template group, and mashup software registered in the APIC system, as shown in FIG. It has a function that makes it possible for a third party to use a data aggregate consisting of groups for free or for a fee. Such API market has, as a first feature point, a function that enables registration and creator distribution and distribution of data (Data) and mashup software (Mashup Softwear). Conventionally, it has been necessary to find out who owns what data, etc. on the network, and when using it, it is necessary to obtain approval from the data owner each time, but the API according to this embodiment In the market, it is possible to easily connect the owner of data and mashup software and the user who wants to use the data and mashup software, and it is clear that the right of data and mashup software is the owner By making it possible to charge for each download, etc., secondary use is possible while retaining the rights or releasing the rights.

本実施形態にかかるAPIマーケットの第2の特徴点としては、テンプレート群(データの無いフィールド情報だけのデータベース)などに対してデータ提供ユーザーがそのテンプレートに参加しデータを登録する機能がある。データが多く収集されれば、そのテンプレートは価値を持つようになることから、テンプレート作成者は、その価値の付いたテンプレートを必要な企業や個人に値段をつけて販売可能となる。例えば、ある自動車会社が[所有する車]に関するテンプレートを作成し、データ提供ユーザーが、そのテンプレートのフィールドに適したデータ、例えば、[車種]:軽自動車 、[色]:黒、[購入日]:2002/2/4などを登録していく場合、データ提供者に対して、テンプレート作成者から登録代などとして、対価を支払うことも可能である。そのようにしてデータが次第に増えてくると、テンプレートが価値を持つようになり、テンプレート作成者は、値段をつけて第三者(企業など)へデータを含むテンプレートごと販売する。すなわち、一つのテンプレートから生まれるお金の流れごと第三者へ販売することが可能となり、従来のダウンロード毎に課金するシステムとは異なる特徴を有する。   A second feature point of the API market according to the present embodiment is a function in which a data providing user participates in a template and registers data for a template group (database having only field information without data). If a lot of data is collected, the template becomes valuable, and the template creator can sell the template with the price to the companies and individuals who need it. For example, a car company creates a template for [owned car], and a data providing user selects data suitable for the field of the template, for example, [car type]: light car, [color]: black, [purchase date]. : When registering 2002/2/4, etc., it is possible to pay the data provider as a registration fee from the template creator. As the data gradually increases in this way, the template becomes valuable, and the template creator sells the template including the data to a third party (such as a company) at a price. In other words, it is possible to sell the money flow generated from one template to a third party, which is different from the conventional system that charges for each download.

さらに、第3の特徴点として、テンプレートがダウンロード毎に課金を行う場合には、データの無いフィールド情報だけの複雑なデータベース構造とAPIを汎用的に作ったユーザーが、その構造を別の用途で使用したいユーザーに販売可能とする点がある。それを利用するユーザー毎に登録されるデータは異なるので、同じテンプレートでもまったく異なる内容のデータベースの構築が可能となる。   Furthermore, as a third feature point, when a template charges for each download, a user who has created a general database structure and API with only field information without data can be used for other purposes. There is a point that can be sold to users who want to use it. Since the data registered for each user who uses it is different, it is possible to construct a database with completely different contents even with the same template.

このような構成を有する本実施形態によれば、テンプレート等を一単位としたデータ集合体の売買が可能となるため、各データ集合体を受け渡す種々の段階において多様な収益性が設定可能となる。   According to the present embodiment having such a configuration, since it is possible to buy and sell data aggregates using a template as a unit, various profitability can be set at various stages of delivering each data aggregate. Become.

以上、本発明者によりなされた発明の実施形態を具体的に説明したが、本発明は上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変形可能であることはいうまでもない。   Although the embodiments of the invention made by the present inventor have been specifically described above, the present invention is not limited to the above-described embodiments, and various modifications can be made without departing from the scope of the invention. Nor.

以上述べたように本発明にかかる情報利用システム(APICシステム)は、多種多様なシステムに対して広く採用することが可能である。   As described above, the information utilization system (APIC system) according to the present invention can be widely used for various systems.

1 API作成サーバー
2 一般ユーザー(一般利用者)
3 他のユーザーサーバー
4 データ利用サイト(ユーザー)
11 データ群
12 自動API生成ツール
13 広告配信手段
14 利用者還元手段
31 データ群
32 自動API生成ツール
MU マスタユーザー(データ提供者)
DU 開発ユーザー
SA サイト運営者
MSW マッシュアップソフトウェア
MAPI マッシュアップAPI
1 API creation server 2 General users (general users)
3 Other user servers 4 Data usage sites (users)
DESCRIPTION OF SYMBOLS 11 Data group 12 Automatic API production | generation tool 13 Advertisement delivery means 14 User return means 31 Data group 32 Automatic API production | generation tool MU Master user (data provider)
DU Development User SA Site Operator MSW Mashup Software MAPI Mashup API

Claims (6)

ユーザーによりサーバー内に入力されたマスタデータを第三者に閲覧又は利用可能な状態でアクセス可能とするAPIを設計・公開する自動API生成手段を備えたものであって、
前記自動API生成手段は、入力と出力との間における処理内容を前記ユーザーに提示してAPI仕様を決定するAPI仕様決定機能と、その決定されたAPI仕様に基づいてデータベースを自動で作成するデータベース作成機能と、データの全部又は一部をネットワーク上に公開するAPI発信機能と、を備えていることを特徴とする情報利用システム。
An automatic API generation means for designing and publishing an API that allows a user to access or use the master data input into the server by a third party;
The automatic API generation means includes an API specification determination function for determining an API specification by presenting processing contents between input and output to the user, and a database for automatically creating a database based on the determined API specification. An information use system comprising: a creation function; and an API transmission function for publishing all or part of data on a network.
前記自動API生成手段は、前記API仕様に基づいてデータベースの作成を自動で行うように構成されていることを特徴とする請求項1記載の情報利用システム。   2. The information utilization system according to claim 1, wherein the automatic API generation unit is configured to automatically create a database based on the API specification. 前記自動API生成手段によりAPI化して作成されたデータベースを閲覧又は利用したユーザーに対して、そのユーザーが閲覧又は利用したデータベースの内容に対応した内容の広告を配信する広告配信手段を備えていることを特徴とする請求項1記載の情報利用システム。   An advertisement distribution unit that distributes an advertisement corresponding to the contents of the database viewed or used by the user to the user who browsed or used the database created by converting the API into the automatic API generation unit; The information utilization system according to claim 1. 前記自動API生成手段によりAPI化して作成されたデータベースの閲覧又は利用の頻度に対応して、当該データベースのデータ提供者又は当該データベースの設計者への対価を決定する利用者還元手段を備えていることを特徴とする請求項1記載の情報利用システム。   In accordance with the frequency of browsing or using the database created by converting the API by the automatic API generation means, a user return means is provided for determining a price to the data provider of the database or the designer of the database. The information utilization system according to claim 1. 請求項4記載の利用者還元手段を利用するものであって、個々のユーザーが所有する個別のマスタデータを適宜に集合させてAPI化し、そのAPI化した各データ集合体をネットワーク上で公開して流通可能とする一方、それらの各データ集合体に対する対価を前記利用者還元手段を用いて決定する構成を備えていることを特徴とする情報利用システム。   5. The user return means according to claim 4, wherein individual master data possessed by each user is appropriately aggregated to be converted into an API, and each API-converted data aggregate is disclosed on a network. The information utilization system is characterized in that it is configured to determine the consideration for each of these data aggregates using the user return means. 前記データ集合体が、メタデータ、テンプレート、又はマッシュアップソフトウェアであることを特徴とする請求項5記載の情報利用システム。   6. The information utilization system according to claim 5, wherein the data aggregate is metadata, a template, or mashup software.
JP2010133730A 2010-06-11 2010-06-11 Information utilization system Pending JP2011258101A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010133730A JP2011258101A (en) 2010-06-11 2010-06-11 Information utilization system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010133730A JP2011258101A (en) 2010-06-11 2010-06-11 Information utilization system

Publications (1)

Publication Number Publication Date
JP2011258101A true JP2011258101A (en) 2011-12-22

Family

ID=45474185

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010133730A Pending JP2011258101A (en) 2010-06-11 2010-06-11 Information utilization system

Country Status (1)

Country Link
JP (1) JP2011258101A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015153421A (en) * 2014-02-10 2015-08-24 ネイバー コーポレーションNAVER Corporation Site management method and system for supporting production of site by using card of various form
KR101585095B1 (en) 2014-05-23 2016-01-13 주식회사 케이티 Apparatus and method of generating mashup data api
JP2020009073A (en) * 2018-07-05 2020-01-16 三菱電機株式会社 Conversion device and conversion program

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004164463A (en) * 2002-11-15 2004-06-10 Canon Inc Method for automatically constructing database system
JP2005025416A (en) * 2003-06-30 2005-01-27 Canon Software Inc Program generation device, program generation method, program, and recording medium
JP2005129027A (en) * 2003-10-23 2005-05-19 Microsoft Corp Design for application programming interface (api)
JP2005310171A (en) * 2002-03-25 2005-11-04 Ricoh Co Ltd Computer readable program for letting computer execute program generation processing
JP2007304681A (en) * 2006-05-09 2007-11-22 Yokogawa Electric Corp Application integrating device
JP2008210214A (en) * 2007-02-27 2008-09-11 Nippon Telegr & Teleph Corp <Ntt> Information processor, communication control processing function addition method and communication control processing function addition program
JP2009175980A (en) * 2008-01-23 2009-08-06 Ntt Docomo Inc Service provider device, service user terminal, service providing system, and accounting method in service providing system
JP2010061676A (en) * 2009-10-26 2010-03-18 Osaka Gas Co Ltd Cooking information system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005310171A (en) * 2002-03-25 2005-11-04 Ricoh Co Ltd Computer readable program for letting computer execute program generation processing
JP2004164463A (en) * 2002-11-15 2004-06-10 Canon Inc Method for automatically constructing database system
JP2005025416A (en) * 2003-06-30 2005-01-27 Canon Software Inc Program generation device, program generation method, program, and recording medium
JP2005129027A (en) * 2003-10-23 2005-05-19 Microsoft Corp Design for application programming interface (api)
JP2007304681A (en) * 2006-05-09 2007-11-22 Yokogawa Electric Corp Application integrating device
JP2008210214A (en) * 2007-02-27 2008-09-11 Nippon Telegr & Teleph Corp <Ntt> Information processor, communication control processing function addition method and communication control processing function addition program
JP2009175980A (en) * 2008-01-23 2009-08-06 Ntt Docomo Inc Service provider device, service user terminal, service providing system, and accounting method in service providing system
JP2010061676A (en) * 2009-10-26 2010-03-18 Osaka Gas Co Ltd Cooking information system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015153421A (en) * 2014-02-10 2015-08-24 ネイバー コーポレーションNAVER Corporation Site management method and system for supporting production of site by using card of various form
US10466859B2 (en) 2014-02-10 2019-11-05 Naver Corporation Method and system for creating a site on a user terminal
KR101585095B1 (en) 2014-05-23 2016-01-13 주식회사 케이티 Apparatus and method of generating mashup data api
JP2020009073A (en) * 2018-07-05 2020-01-16 三菱電機株式会社 Conversion device and conversion program

Similar Documents

Publication Publication Date Title
US11875382B2 (en) Software application customized for target market
US9996616B2 (en) Methods and systems for searching, selecting, and displaying content
JP5101599B2 (en) Monetize service calls with advertisements
US20150012363A1 (en) Methods and systems for processing and displaying content
US20190384616A1 (en) Method for displaying and changing mobile commerce elements within native application instantly without code build
JPH10508964A (en) Online service development tool with pricing function
JP5883933B2 (en) Import large amounts of content-related metadata into online content portals
US20110231322A1 (en) Automated rules-based rights resolution
KR102066664B1 (en) Apparatus and method for providing advertisement using SNS, and computer program for executing the method
TW556103B (en) Web page annotation systems
US8732010B1 (en) Annotated advertisements and advertisement microsites
EP2447831A1 (en) Apparatus and method for generating applications automatically
CN105190664A (en) Reporting mobile application actions
JP2009265833A (en) Advertisement system and advertisement method
KR20040079604A (en) Method for generating a search result list on a web search engine
US20160012551A1 (en) Apparatus and Application Server for Providing a Service to a User
KR102616924B1 (en) Method and system for providing ranking information using effect analysis data of informational data
US20150371222A1 (en) Website content optimization for target market
JP2011258101A (en) Information utilization system
JP3276145B1 (en) Internet advertising method and system
JP4513159B2 (en) Information processing apparatus and method, and recording medium
JP2001325378A (en) Advertisement system using internet and advertisement generation support tool
Janeiro et al. Improving the development of service based applications through service annotations
US20130124337A1 (en) Method for extracting metadata for e-commerce offerings from variable data campaign content
KR102340737B1 (en) System and method for providing advertisement exposure service using hot key registration

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130515

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140218

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140421

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140424

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141128

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150407