WO2019208211A1 - Server device - Google Patents

Server device Download PDF

Info

Publication number
WO2019208211A1
WO2019208211A1 PCT/JP2019/015520 JP2019015520W WO2019208211A1 WO 2019208211 A1 WO2019208211 A1 WO 2019208211A1 JP 2019015520 W JP2019015520 W JP 2019015520W WO 2019208211 A1 WO2019208211 A1 WO 2019208211A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
request
information
requester
api
Prior art date
Application number
PCT/JP2019/015520
Other languages
French (fr)
Japanese (ja)
Inventor
淳 小野寺
義和 中村
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Priority to JP2020516194A priority Critical patent/JPWO2019208211A1/en
Publication of WO2019208211A1 publication Critical patent/WO2019208211A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units

Definitions

  • the present invention relates to an information processing system, a server device, a method thereof, and a program.
  • a data provider device For example, in the information processing system described in Patent Document 1, a data provider device, a data requester device, and a server device are connected to each other through a network.
  • the server apparatus receives the public data from the data provider apparatus, the server apparatus registers it in the database, and registers information such as the document ID and the document provider ID in the document information table.
  • the server device retrieves the corresponding public data from the database and transmits it to the data requester device.
  • Non-Patent Document 1 a data provider device, a data requester device, and a data catalog site (server device) are connected to each other through a network.
  • the data catalog site registers the meta information of the public data in the data catalog so that the public data provided by a plurality of data provider devices can be searched across the field.
  • the data requester device searches the data catalog to obtain an API (Application Programming Interface) of the data provider device that provides the desired public data. Then, the data requester device acquires the public data from the corresponding data provider device by executing the acquired API.
  • API Application Programming Interface
  • a server device acquires public data provided from a data provider device in advance and stores it in a database. For this reason, a database having a capacity corresponding to the amount of public data is required, which increases the cost of the server device.
  • the information processing system described in Non-Patent Document 1 is a server device because meta information of public data is registered in a data catalog site, and the contents of the data are held by the data provider device. The construction cost of the data catalog site is small.
  • a data requester must individually execute an API of a data provider device that provides public data desired to be acquired. As a result, the load on the data requester increases.
  • An object of the present invention is to provide a server device that solves the above-described problems.
  • a server device connected to a data provider device and a data requester device through a network, A database for storing interface information for acquiring data from the data provider device; When a first request for obtaining the data is received from the data requester device, the data is obtained from the data provider device by a second request created based on the interface information stored in the database. And a providing unit that obtains and sends the data to the data requester apparatus.
  • a method includes: A method executed by a server device connected to a data provider device and a data requester device through a network and having a database for storing interface information for acquiring data from the data provider device, When a first request for obtaining the data is received from the data requester device, the data is obtained from the data provider device by a second request created based on the interface information stored in the database. Obtain and send to the data requester device.
  • a computer-readable recording medium is A computer connected to a data provider device and a data requester device through a network and having a database for storing interface information for acquiring data from the data provider device.
  • a first request for obtaining the data is received from the data requester device, the data is obtained from the data provider device by a second request created based on the interface information stored in the database.
  • a program for acquiring and sending the data requester device is recorded.
  • An information processing system includes: A server apparatus according to an embodiment of the present invention, and a data provider apparatus and a data requester apparatus connected to the server apparatus through a network.
  • the present invention having the above-described configuration can reduce the load on the data requester and reduce the cost of the server device.
  • FIG. 1 is a block diagram of an information processing system according to a first embodiment of the present invention. It is a figure which shows an example of the data catalog which the server apparatus which concerns on the 1st Embodiment of this invention has. It is a flowchart which shows an example of operation
  • 5 is a sequence chart illustrating an example of an operation of a server device when a data access API is called from a data requester device in the first embodiment of the present invention.
  • 7 is a sequence chart showing another example of the operation of the server device when the data access API is called from the data requester device in the first embodiment of the present invention.
  • 6 is a sequence chart showing another example of the operation of the server device when the data access API is called from the data requester device in the first embodiment of the present invention.
  • 6 is a sequence chart showing still another example of the operation of the server device when the data access API is called from the data requester device in the first embodiment of the present invention.
  • 1 is a conceptual diagram of a scoring support system to which an information processing system according to a first embodiment of the present invention is applied.
  • 1 is a conceptual diagram of an active learning degree measurement system to which an information processing system according to a first embodiment of the present invention is applied.
  • 1 is a conceptual diagram of a remote lesson support system to which an information processing system according to a first embodiment of the present invention is applied.
  • 1 is a block diagram of an information processing system according to a first embodiment of the present invention.
  • FIG. 1 is a block diagram of an information processing system according to the first embodiment of the present invention.
  • the information processing system according to the first exemplary embodiment of the present invention includes a server device 100, a plurality of data provider devices 140-1 to 140-m, and a plurality of data requester devices 150-1. 150-n and a network 160 that interconnects them.
  • the data provider devices 140-1 to 140-m are information processing devices such as personal computers and smartphones that are used by a person who holds data such as documents, images, and voices to release the held data to a third party. It is.
  • the format of the data is arbitrary.
  • the data is in JSON format.
  • a data format other than the JSON format, for example, XML may be used.
  • Each of the data provider devices 140-1 to 140-m includes at least one API that is an interface for externally operating a function of disclosing data held therein.
  • the specification of the API held by each data provider device 140-1 to 140-m is arbitrary.
  • the API possessed by a certain data provider device has a POST method format.
  • the API held by other data provider devices is in the GET method format.
  • the API is not limited to the POST method format and the GET method format, and may be in other formats.
  • Each data provider device 140-1 to 140-m is configured to return a response including the requested data upon receiving a data acquisition request by the API.
  • the API included in the data provider devices 140-1 to 140-m is referred to as a data request API.
  • the branch numbers are omitted and simply referred to as the data provider device 140.
  • the data requester devices 150-1 to 150-n are information processing devices such as personal computers and smartphones used by those who request data such as documents, images, and sounds. Each of the data requester apparatuses 150-1 to 150-n has a browser function that transmits an API request and receives a response.
  • the branch number is omitted and simply referred to as the data requester device 150.
  • the server apparatus 100 is an information processing apparatus such as a personal computer used by a person who provides a service for providing data held by the data provider apparatus 140 to the data requester apparatus 150.
  • the server device 100 includes a communication interface unit 111, an operation input unit 112, a screen display unit 113, a storage unit 120, and an arithmetic processing unit 130.
  • the communication interface unit 111 includes, for example, a data communication circuit, and performs data communication with various devices such as the data provider device 140 and the data requester device 150 connected via a wired or wireless communication line. It is configured.
  • the operation input unit 112 includes an operation input device such as a keyboard and a mouse, and is configured to detect an operator operation and output the operation to the arithmetic processing unit 130.
  • the screen display unit 113 is configured by a screen display device such as an LCD (Liquid Crystal Display) or a PDP (Plasma Display Panel), and displays various information such as an operation menu on the screen according to instructions from the arithmetic processing unit 130. It is configured.
  • the storage unit 120 is configured by a storage device such as a hard disk or a memory, and is configured to store processing information and programs 121 necessary for various processes in the arithmetic processing unit 130.
  • the program 121 is a program that realizes various processing units by being read and executed by the arithmetic processing unit 130, and an external device (not shown) or a storage medium via a data input / output function such as the communication interface unit 111. (Not shown) is read in advance and stored in the storage unit 120.
  • the processing information stored in the storage unit 120 includes data access API information 122 and a data catalog 123.
  • the data access API information 122 is definition information related to an interface used when the data requester device 150 acquires data from the server device 100.
  • the server device 100 acquires the data requested by the API from the data provider device 140, and a response including the acquired data Is configured to return.
  • the specification of the data access API is arbitrary.
  • the data access API has a POST method format.
  • the data access API is not limited to the POST method format, and may be another format such as a GET method format.
  • the data catalog 123 is a database that stores information related to data published by the data provider device 140.
  • FIG. 2 shows an example of the data catalog 123.
  • the data catalog 123 in this example has a plurality of entries, and each entry includes items such as a resource ID, an API serial number, a data request API, a request header, a request body, a query string, a time constraint condition, and meta information.
  • the resource ID is an identification number assigned to one or a plurality of data that can be collectively acquired from the server apparatus 100 by one data access API request.
  • the API sequence number is a serial number assigned to one or more data request APIs for acquiring data identified by the resource ID.
  • the data request API is a URI of the data request API for acquiring all or part of the data identified by the resource ID.
  • the request header is a name of a request parameter necessary for the header of the data request API.
  • the request body is a name of a request parameter necessary for the request body when the data request API method is POST.
  • the query string is the name of a request parameter required when the data request API method is GET.
  • the time constraint condition is a time condition regarding execution of the data request API.
  • the meta information is a data name, a keyword, and the like extracted from the data body.
  • the entry in the second line in FIG. 2 indicates that the data with resource ID 1 is https: // dataA. com / v1 / aa.
  • the data request API needs to set a request parameter named X-AA in the request header and a request parameter named Abody1 in the request body, and the time required to execute the data request API. This means that there is no constraint.
  • the request parameter X-AA is for selecting (extracting) partial data from data acquired by the data request API. For example, when the data acquired by the data request API is demographic data of a certain municipality after the year 2000, X-AA designates a year, for example.
  • “Name” is described as the data name in the meta information, and a keyword or the like is described although not shown.
  • the number of request parameters set in the request header is not limited to one, and may be plural.
  • two request parameters named X-AA and X-AAA may be set in the request header.
  • the request parameters X-AA and X-AAA are for selecting (extracting) partial data from data acquired by the data request API. For example, when the data acquired by the data request API is demographic data of a certain municipality after the year 2000, X-AA designates a year, for example, and X-AAA designates a month.
  • two entries in the third to fourth lines in FIG. 2 indicate that data with a resource ID of 2 is https: // dataB. com / v1 / bb. json data request API and https: // dataC. com / v1 / cc.
  • the former data request API it is necessary to set a request parameter named X-BB in the request header and a request parameter named Bbody1 in the request body, and the time required to execute the data request API This means that there is no such restriction.
  • a time constraint condition of 08: 00 ⁇ t ⁇ 18: 00 is set in the entry on the fifth line in FIG. This is because data with a resource ID of 3 is stored at https: // dataD. com / v1 / dd. This indicates that when data is acquired from the data provider device 140 by the data request API “json”, the data request API must be executed in a period from 8:00 am to 6:00 pm.
  • the reason why such a time limit is set is that, for example, the data provider device 140 having the data request API has a limitation on the operation time.
  • a time constraint condition of 2018/05/01/08: 0 ⁇ t is set in the entry on the sixth line in FIG. This is because data with a resource ID of 4 is stored in https: // dataE. com / v1 / ee.
  • this indicates that the data request API must be executed after 8:00 am on May 1, 2018.
  • the reason why such a time limit is set is, for example, that the data provided by the data request API is disclosed starting from a specific date and time.
  • a request parameter named X-FF is set in the request header, the item of the request body is NULL, and the name of the request parameter is set in the item of the query string.
  • Ff1 is described. This is because data with a resource ID of 5 is stored at https: // dataF. com / v1 / ff.
  • the arithmetic processing unit 130 includes a microprocessor such as an MPU and its peripheral circuits, and reads the program 121 from the storage unit 120 and executes it, thereby cooperating the hardware and the program 121. In this way, various processing units are realized.
  • Main processing units realized by the arithmetic processing unit 130 include a registration unit 131, a search unit 132, and a providing unit 133.
  • the registration unit 131 is configured to maintain and manage the data catalog 123 on the storage unit 120. For example, the registration unit 131 registers new information in the data catalog 123 according to information received from the data provider device 140 and information input from the operation input unit 112, or deletes the registered information. It is configured to update registered information.
  • the search unit 132 is configured to search the data catalog 123 on the storage unit 120. For example, the search unit 132 searches the meta information of the entry of the data catalog 123 according to the search request including the keyword received from the data requester device 140, and searches all or part of the contents of the entry having the matching keyword as a search result. It is configured to return as.
  • the providing unit 133 is configured to acquire the data requested from the data requester device 150 from the data provider device 140 and provide it to the request source. For example, when the API defined by the data access API information 122 is called from the data requester device 150, the providing unit 133 creates data based on information such as the URI of the data request API registered in the data catalog 123. Data is acquired from the data provider device 140 by the request API, and is returned to the data requester device 150.
  • FIG. 3 is a flowchart showing an example of the operation of the registration unit 131 of the server apparatus 100.
  • the operation of the registration unit 131 will be described with reference to FIG.
  • the registration unit 131 determines whether registration information has been received from the data provider device 140 (step S1), and whether an operation for adding, updating, or deleting registration information has been performed on the data catalog 123 in the operation input unit 112. (Step S2) is constantly monitored.
  • the data provider device 140 can register in the data catalog 123 by voluntarily transmitting registration information related to data to be disclosed to the server device 100.
  • the registration information for one case transmitted from the data provider device 140 includes data items of data request API, request header, request body, query string, time constraint condition, and meta information shown in FIG. Yes.
  • the registration unit 131 receives n registration information (n is a positive integer equal to or greater than 1) from the data provider device 140, the registration unit 131 secures n new entries in the data catalog 123 and receives the received n entries. Registration information is registered in each entry (step S3). At this time, the registration unit 131 registers the newly assigned resource ID in the resource ID item of n new entries. Also, a serial number starting from 1 is registered in the API serial number field of n new entries.
  • the registration unit 131 when an operator operation for adding n registration information is performed from the operation input unit 112, the registration unit 131 performs the same operation as when n registration information is received from the data provider device 140. Thus, registration information is added to the data catalog 123 (step S4).
  • the registration unit 131 updates the registration information in the data catalog 123 or updates the registration information registered in the data catalog 123 from the operation input unit 112 according to the operation content. Deletion is performed (step S4).
  • any data provider device 140 can register registration information in the data catalog 123.
  • the registration unit 131 performs authentication to confirm whether or not the data provider device 140 is a person having a legitimate authority, and registers registration information in the data catalog 123 only for the data provider device 140 that has been successfully authenticated. You may comprise so that it can register.
  • the registration unit 131 performs authentication for confirming whether or not the operator has a legitimate authority, and only the operator who has succeeded in authentication can add, update, and delete registration information from the operation input unit 112 to the data catalog 123. It may be.
  • the registration unit 131 may make an inquiry to the data provider device 140 to promote data registration. For example, when only a part of a plurality of data provider devices 140 related to each other performs registration, the registration unit 131 may make an inquiry to the unregistered data provider device 140 to urge registration. .
  • FIG. 4 is a flowchart showing an example of the operation of the search unit 132 of the server device 100.
  • the operation of the search unit 132 will be described with reference to FIG.
  • the search unit 132 always monitors whether or not a search request has been received from the data requester device 150 (step S11).
  • the data requester device 150 can search for keywords included in the meta information of the data catalog 123 as search keywords.
  • the search unit 132 searches for an entry in the data catalog 123 that includes the search keyword specified in the search request in the meta information (step S12).
  • the search unit 132 returns the search result to the data requester device 150 that is the search request source (step S13).
  • the search unit 132 returns a search result including all or part of the information registered in the entry of the data catalog 123 that has been successfully searched.
  • the portion may be at least a resource ID, a request header, a request body, and a query string, for example.
  • any data requester device 150 can search the data catalog 123.
  • the search unit 132 performs authentication for confirming whether or not the data requester device 150 has a legitimate authority, and can search the data catalog 123 only for the data requester device 150 that has been successfully authenticated. You may do it.
  • FIG. 5 is a flowchart showing an example of the operation of the providing unit 133 of the server device 100.
  • the operation of the providing unit 133 will be described with reference to FIG.
  • the providing unit 133 monitors whether an acquisition request has been received from the data requester device 150 (step S21).
  • the data requester device 150 can request acquisition of data by specifying the resource ID of the data catalog 123 by calling the data access API.
  • the providing unit 133 acquires the data specified by the resource ID specified in the acquisition request from the data provider device 140 (step S22).
  • the providing unit 133 returns the acquired data as a response to the data access API to the requesting data requester device 150 (step S23).
  • an arbitrary data requester device 150 can request acquisition of data.
  • the providing unit 133 performs authentication for confirming whether or not the data requester device 150 has a legitimate authority so that only the data requester device 150 that has succeeded in authentication can acquire data. May be.
  • FIG. 6 is a sequence chart showing an example of the operation of the server device 100 when the data access API is called from the data requester device 150-1.
  • the data requester device 150-1 sets the value 1 as the resource ID in the request header of the data access API, and the request parameter X ⁇ required in the request header of the data acquisition API in the request body.
  • the value 10 is set as the value of AA
  • the value 3 is set as the request parameter Abody1 required in the request body.
  • the providing unit 133 of the server apparatus 100 assembles a data acquisition API for acquiring data having a resource ID value of 1 and makes the request (step S32). Referring to the data catalog of FIG.
  • the status code is 200 (OK)
  • the response header includes the value AA as the status name aa
  • the response body includes AAA1 as the value of the item aa1.
  • the server apparatus 100 When the server apparatus 100 receives the response from the data provider apparatus 140-1, the server apparatus 100 edits a response that matches the specifications of the data access API based on the content of the received response, and returns the response to the data requester apparatus 150-1. (Step S34).
  • the status code is 200 (OK)
  • the response header includes the value AA as the status name Acs-Status
  • the response body includes AAA1 as the value of the item aa1.
  • FIG. 7 is a sequence chart showing another operation example of the server apparatus 100 when the data access API is called from the data requester apparatus 150-1.
  • the data requester device 150-1 sets a value 2 as the resource ID in the request header of the data access API, and is required in the request header of the data acquisition API of API sequence number 1 in the request body.
  • the value 11 is set as the value of the request parameter X-BB and the value 12 is set as the value of the request parameter X-CC required in the request header of the data acquisition API of the API serial number 2, and the data acquisition of the API serial number 1 is performed.
  • the value 4 is set as the request parameter Bbody1 required in the API request body, and the value 5 is set as the request parameter Cbody1 required in the data acquisition API request buddy of the API serial number 2.
  • the providing unit 133 of the server apparatus 100 assembles a data acquisition API for acquiring data having a resource ID value of 2 and makes the request (step S42).
  • the providing unit 133 first makes a request by assembling the data request API of API serial number 1 as described in step S42 (step S42).
  • the status code is 200 (OK)
  • the response header includes the value BB as the status name bb
  • the response body includes BBB1 as the value of the item bb1.
  • the providing unit 133 makes a request by assembling the data request API of API serial number 2 as described in step S44.
  • the status code is 200 (OK), there is no response header, and CCC1 is included as the value of the item cc1 in the response body.
  • the server device 100 When the server device 100 finishes receiving all API serial number data request API requests and responses, the server device 100 compiles a response that conforms to the specifications of the data access API based on the content of each received response, and requests the data request. Return to the user device 150-1 (step S46).
  • the status code is 200 (OK)
  • the response header includes the value BB as the status name Acs-Status
  • the response body includes BBB1 as the value of the item bb1, and CCC1 as the value of the item cc1. ing.
  • the server device 100 receives all responses from the data provider devices 140-2 and 140-3, and then returns the response to the data requester device 150-1.
  • the server device 100 may return the response to the data requester device as soon as the response is received from the data provider device. That is, when the server apparatus 100 receives a response from the data provider apparatus 140-2, the server apparatus 100 edits the response conforming to the data access API specification based on the content of the received response, and sends it to the data requester apparatus 150-1. return. Further, when the server apparatus 100 receives a response from the data provider apparatus 140-3, the server apparatus 100 edits a response that matches the specification of the data access API based on the content of the received response, and sends it to the data requester apparatus 150-1. return. In this case, the data requester apparatus 150-1 returns a plurality of responses to one request. Therefore, the server apparatus 100 assigns a response number so that the data requester apparatus 150-1 can identify each of a plurality of responses, or adds an indicator indicating whether each response is the last response. May be.
  • FIG. 8 is a sequence chart showing still another operation example of the server apparatus 100 when the data access API is called from the data requester apparatus 150-1.
  • the data requester device 150-1 sets the value 3 as the resource ID in the request header of the data access API.
  • the providing unit 133 of the server apparatus 100 receives a request by the data access API (step S51)
  • the providing unit 133 attempts to make a request by assembling a data acquisition API for acquiring data having a resource ID value of 3.
  • the providing unit 133 determines whether or not the request can be made immediately based on the current time and the time constraint condition, and whether or not the request can be made later if the request is not immediately available (step S52).
  • the time constraint condition of 08: 00 ⁇ t ⁇ 18: 00 the providing unit 133 determines that the request can be made immediately if the current time is the time zone from 8:00 to 18:00. If the current time is after 0:00 and less than 8:00, the providing unit 133 determines that the request can be made after 8:00 on that day. If the current time is after 18:00 and less than 24:00, the providing unit 133 determines that the request can be made after 8:00 on the next day.
  • the providing unit 133 makes a request as soon as possible if the request can be made immediately (step S53). If the requesting unit 133 cannot immediately request, the providing unit 133 suspends the request until a requestable time zone is entered. And if the provision part 133 enters into the time slot
  • the reception of the response from the request destination data providing apparatus 140-4 (step S54) and the transmission of the response to the data requester apparatus 150-1 (step S55) are performed in the same manner as steps S33 and S34 of FIG. In the above description, the providing unit 133 automatically implemented the pending request. However, the providing unit 133 may make an inquiry to the requesting data requester apparatus 150-1 before executing the pending request. That is, the providing unit 133 may execute the request that has been suspended after confirming with the data requester device 150-1 again.
  • FIG. 9 is a sequence chart showing still another operation example of the server apparatus 100 when the data access API is called from the data requester apparatus 150-1.
  • the data requester device 150-1 sets the value 5 as the resource ID in the request header of the data access API, and the request parameter X ⁇ required in the request header of the data acquisition API in the request body.
  • the value 14 is set as the FF value, and the value 5 is set as the request parameter Ff1 required in the query string.
  • the providing unit 133 of the server apparatus 100 assembles a data acquisition API for acquiring data having a resource ID value of 5 and makes the request (step S62). Referring to the data catalog of FIG.
  • the cost of the server device 100 can be reduced. The reason is that when the data requester device 150 requests acquisition of data, the server device 100 acquires the data from the data provider device 140 that holds the corresponding data and provides the data requester device 150 with the data. This is because a large-capacity database that holds data acquired from the data provider device 140 in advance is not required.
  • the load on the data requester can be reduced. The reason is that a person who requests acquisition of data from the data requester apparatus 150 does not need to individually make a request to the data provider apparatus 140 holding the data to be acquired, and the same interface (data This is because a request may be issued through the access API).
  • the data requester can use the same interface (data A request can be issued through an access API.
  • the reason is that the server apparatus 100 needs the data request API required based on the data acquisition API information of each data provider apparatus 140 registered in the data catalog 123 and the value of the request parameter specified by the data requester. Is to assemble automatically.
  • the data requester can acquire the data acquired from the plurality of data provider devices 140 all at once by one data access API request.
  • the reason is that the server apparatus 100 creates a plurality of data acquisition APIs based on the contents of a plurality of entries registered in the data catalog 123 corresponding to the resource ID specified by the data requester, and provides a plurality of data This is because a request is sent to the requester device 140, a plurality of responses from the plurality of data provider devices 140 are edited into one response and returned to the data requester.
  • the data requester can request data acquisition at a convenient time regardless of the time limit for the data to be acquired.
  • the reason is that the server device 100 manages the time limit for acquiring data from the data provider device 140 in the data catalog 123 and controls the timing of acquiring data, that is, the timing of calling the data acquisition API. .
  • FIG. 10 is a conceptual diagram of a scoring support system. As shown in FIG. 10, the scoring support system uses the information processing system according to the present embodiment in three stages of answer creation, answer input, and scoring support.
  • the data provider device 140 used by the teacher registers in the data catalog 123 of the server device 100 in order to disclose the answer information of the test.
  • the data provider device 140 used by the person who supports the input of the answer is a server for publishing the answer by handwritten characters, voices, etc. inputted by the student to the test given as a text. Register in the data catalog 123 of the device 100.
  • the data requester device 150 used by the scorer acquires answer information from the data provider device 140 used by the teacher via the server device 100.
  • the data requester device 150 obtains answer data for each school and each student from the data provider device 140 of the answer input person via the server device 100.
  • the data provider device 140 used by the scorer performs scoring based on the acquired information, performs various analyses, and registers the data in the data catalog 123 of the server device 100 in order to disclose the processing results.
  • Processing results include written scoring result data (correct / incorrect results, points (partial points), correct / incorrect locations), statistical data of scoring results by student (score transition, proficiency), and counting units (by school, by class, etc.) There are wrong answer analysis data, scoring data by counting units (by school, by class, etc.). Then, the data requester device 150 used by the teacher acquires the processing result from the data provider device 140 used by the grader via the server device 100.
  • FIG. 11 is a conceptual diagram of an active learning degree measurement system. As shown in FIG. 11, the active learning degree measurement system uses the information processing system according to the present embodiment in three stages of implementation / collection, quantification, and analysis / reflection.
  • the data provider device 140 that monitors the images and sounds of students taking classes in the classroom is registered in the catalog data of the server device 100 in order to publish the acquired images and sound data. To do. Further, the data provider device 140 registers the voice data for each student obtained by analyzing the voice data and images in the catalog data of the server device 100.
  • the data requester device 150 used for quantification acquires voice data for each student from the data provider device 140 via the server device 100, and the degree of liveliness (rising and falling) and emotions. Analyzes changes (joy, anger, sadness, spirit) and converts voice data into text. Further, the data provider device 140 registers in the catalog data of the server device 100 in order to publish the analysis result of vitality, the analysis result of emotion change, and the voice data converted into text.
  • the data requester device 150 used by the analyst receives the vitality analysis result, the emotion change analysis result, the voice text, the data provider device 140 used for quantification via the server device 100. Get image data. Further, the data provider device 140 used by the analyst analyzes the above vitality analysis result, emotion change analysis result, voice text, and image data to analyze the singularity information of the speech change and the singularity of the emotion change. Information is detected, authoring data of singular points and images / sounds are created, and registered in the catalog data of the server apparatus 100 in order to make them public.
  • time-series discussion content data of group discussions who, when and what remarks were made, in what state discussions were made, statistical data such as phrases and vocabulary that occurred frequently during discussions Is registered in the catalog data of the server apparatus 100 in order to make it public.
  • the data requester device 150 used by the teacher obtains the analysis result from the data provider device 140 used by the analyst via the server device 100, and creates a chart for each student.
  • FIG. 12 is a conceptual diagram of a distance learning support system.
  • the data provider device 140 installed in the classroom registers in the catalog data of the server device 100 in order to publish the moving image data that captures the state of the lesson.
  • the moving image data capturing the state of the lesson can be acquired from the data requester device 150 via the server device 100 and used for various applications.
  • the data requester device 150 analyzes the acquired moving image data, generates student gaze data and facial expression data, and further analyzes the student's concentration based on those data.
  • the data requester device 150 analyzes the acquired moving image data and generates utterance content (text) data of the student.
  • the data requester device 150 analyzes the acquired moving image data and generates person identification data based on face authentication.
  • FIG. 13 is a block diagram of an information processing system according to the second embodiment of the present invention.
  • the information processing system 200 includes a server device 210, a data provider device 220, a data requester device 230, and a network 240 that connects them to each other.
  • the data provider device 220 is an information processing device used by a person who provides data such as public data.
  • the data provider device 220 can be configured in the same manner as the data provider device 140 of FIG. 1, for example, but is not limited thereto.
  • the data requester device 230 is an information processing device used by a person who requests data such as public data.
  • the data requester device 230 can be configured in the same manner as the data requester device 150 of FIG. 1, for example, but is not limited thereto.
  • the server device 210 is an information processing device that acquires data requested from the data requester device 230 via the network 240 from the data provider device 220 via the network 240 and provides the data requester device 230 via the network 240.
  • the server device 210 includes a database 211 and a providing unit 212.
  • the database 211 is configured to store interface information for acquiring data from the data provider device 220.
  • the database 211 can be configured in the same manner as the data catalog 123 of FIG. 1, for example, but is not limited thereto.
  • the providing unit 212 Upon receiving the first request for obtaining data from the data requester device 230, the providing unit 212 receives the first request from the data provider device 220 by using the second request created based on the interface information stored in the database 211. Data is acquired and sent to the data requester device 230.
  • the providing unit 212 can be configured, for example, in the same manner as the providing unit 133 in FIG. 1, but is not limited thereto.
  • the information processing system 200 operates as follows. That is, when data acquisition is performed, the data requester device 230 issues a first request for data acquisition to the server device 210. When receiving the first request, the provision unit 212 of the server device 210 creates a second request based on the interface information stored in the database 211. Next, the providing unit 212 issues the created second request to the data provider device 220. When receiving the second request, the data provider device 220 sends the requested data to the server device 210. The providing unit 212 of the server device 210 acquires data from the data provider device 220 and sends it to the data requester device 230.
  • the cost of the server device can be reduced.
  • the server device 210 acquires data from the data provider device 220 that holds the corresponding data and provides the data requester device 230 with the data. This is because a large-capacity database that holds data acquired from the data provider device 220 in advance is not required.
  • the load on the data requester can be reduced. The reason is that a person who requests acquisition of data from the data requester device 230 does not need to individually make a request to the data provider device 220 that holds the data to be acquired. Because it is good.
  • the present invention can be used in general information processing systems for utilizing public data such as documents for open innovation.
  • a server device connected to a data provider device and a data requester device through a network, A database for storing interface information for acquiring data from the data provider device; When a first request for obtaining the data is received from the data requester device, the data is obtained from the data provider device by a second request created based on the interface information stored in the database. And a providing unit that obtains and sends the data to the data requester device.
  • Appendix 2 The server apparatus according to appendix 1, wherein the database stores the interface information and the identification information of the data in association with each other.
  • [Appendix 3] The server device according to attachment 1 or 2, wherein the first request includes identification information of the data.
  • Appendix 4 The server apparatus according to any one of appendices 1 to 3, wherein the interface information includes a request parameter name necessary for the second request.
  • Appendix 5 The server device according to any one of appendices 1 to 4, wherein the providing unit sets a value of a request parameter extracted from the first request in the second request.
  • Appendix 6 The server apparatus according to any one of appendices 1 to 5, wherein the database stores information of a plurality of the interfaces that are different from each other in association with identification information of the same data.
  • the providing unit according to any one of appendices 1 to 6, wherein the providing unit creates a plurality of second requests based on information of the plurality of interfaces corresponding to identification information of the data extracted from the first request.
  • Server device [Appendix 8]
  • the providing unit includes a plurality of second data requests from a plurality of the data provider devices by a plurality of the second requests created based on information of the plurality of interfaces corresponding to the identification information of the data extracted from the first request.
  • the server device according to any one of appendices 1 to 7, which acquires the data and sends the data to the data requester device.
  • the providing unit includes a plurality of second data requests from a plurality of the data provider devices by a plurality of the second requests created based on information of the plurality of interfaces corresponding to the identification information of the data extracted from the first request.
  • the server device according to any one of appendices 1 to 8, wherein the server device acquires the data and sends the data to the data requester device in response to the first request.
  • [Appendix 10] 10. The server device according to any one of appendices 1 to 9, wherein the interface information includes a temporal restriction condition.
  • [Appendix 12] The server device according to any one of appendices 1 to 10, wherein the interface is an API.
  • Appendix 13 A method executed by a server device connected to a data provider device and a data requester device through a network and having a database for storing interface information for acquiring data from the data provider device, When a first request for obtaining the data is received from the data requester device, the data is obtained from the data provider device by a second request created based on the interface information stored in the database. A method of acquiring and sending to the data requester device.
  • [Appendix 14] A computer connected to a data provider device and a data requester device through a network and having a database for storing interface information for acquiring data from the data provider device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

A server device connected to a data provider device and a data requestor device via a network is provided with a database and a providing unit. The database stores information relating to an interface to acquire data from the data provider device. Upon reception of a first request for requesting an acquisition of the data from the data requestor device, the providing unit acquires the data from the data provider device by a second request created on the basis of the information relating to the interface stored in the database, and transmits the data to the data requestor device.

Description

サーバ装置Server device
 本発明は、情報処理システム、サーバ装置、及びその方法ならびにプログラムに関する。 The present invention relates to an information processing system, a server device, a method thereof, and a program.
 文書などの公開データをオープンイノベーション等に活用するための情報処理システムが提案されている。 An information processing system for utilizing public data such as documents for open innovation has been proposed.
 例えば特許文献1に記載された情報処理システムは、データ提供者装置とデータ要求者装置とサーバ装置とがネットワークを通じて相互に接続される。サーバ装置は、データ提供者装置から公開データを受信するとデータベースに登録し、また文書IDや文書提供者ID等の情報を文書情報テーブルに登録する。そして、サーバ装置は、データ要求者装置からデータの取得が要求されると、該当する公開データをデータベースから取り出して、データ要求者装置へ送信する。 For example, in the information processing system described in Patent Document 1, a data provider device, a data requester device, and a server device are connected to each other through a network. When the server apparatus receives the public data from the data provider apparatus, the server apparatus registers it in the database, and registers information such as the document ID and the document provider ID in the document information table. When the data requester device requests acquisition of data, the server device retrieves the corresponding public data from the database and transmits it to the data requester device.
 また、非特許文献1に記載された情報処理システムは、データ提供者装置とデータ要求者装置とデータカタログサイト(サーバ装置)とがネットワークを通じて相互に接続される。データカタログサイトは、複数のデータ提供者装置が提供する公開データの分野横断的な検索を可能とするように公開データのメタ情報をデータカタログに登録する。データ要求者装置は、データカタログを検索することで、所望の公開データを提供するデータ提供者装置のAPI(Application Programming Interface)を取得する。そして、データ要求者装置は、取得したAPIを実行することにより、該当するデータ提供者装置から公開データを取得する。 In the information processing system described in Non-Patent Document 1, a data provider device, a data requester device, and a data catalog site (server device) are connected to each other through a network. The data catalog site registers the meta information of the public data in the data catalog so that the public data provided by a plurality of data provider devices can be searched across the field. The data requester device searches the data catalog to obtain an API (Application Programming Interface) of the data provider device that provides the desired public data. Then, the data requester device acquires the public data from the corresponding data provider device by executing the acquired API.
特開2016-207163JP2016-207163
 特許文献1に記載される情報処理システムでは、サーバ装置がデータ提供者装置から提供される公開データを事前に取得してデータベースに保存する。そのため、公開データの量に応じた容量のデータベースが必要になり、サーバ装置のコストが増大する。これに対して、非特許文献1に記載される情報処理システムでは、公開データのメタ情報がデータカタログサイトに登録され、データの中身はデータ提供者装置で保持しているため、サーバ装置であるデータカタログサイトの構築コストは小さい。しかし、非特許文献1に記載される情報処理システムでは、データ要求者は、取得を希望する公開データを提供するデータ提供者装置のAPIを個別に実行しなければならない。そのため、データ要求者の負荷が増大する。 In the information processing system described in Patent Document 1, a server device acquires public data provided from a data provider device in advance and stores it in a database. For this reason, a database having a capacity corresponding to the amount of public data is required, which increases the cost of the server device. In contrast, the information processing system described in Non-Patent Document 1 is a server device because meta information of public data is registered in a data catalog site, and the contents of the data are held by the data provider device. The construction cost of the data catalog site is small. However, in the information processing system described in Non-Patent Document 1, a data requester must individually execute an API of a data provider device that provides public data desired to be acquired. As a result, the load on the data requester increases.
 本発明の目的は、上述した課題を解決するサーバ装置を提供することにある。 An object of the present invention is to provide a server device that solves the above-described problems.
 本発明の一形態に係るサーバ装置は、
 データ提供者装置とデータ要求者装置とにネットワークを通じて接続されたサーバ装置であって、
 前記データ提供者装置からデータを取得するためのインターフェースの情報を記憶するデータベースと、
 前記データ要求者装置から前記データの取得を要求する第1のリクエストを受け付けると、前記データベースに記憶された前記インターフェースの情報に基づいて作成した第2のリクエストによって前記データ提供者装置から前記データを取得し、前記データ要求者装置へ送出する提供部と、を備える。
A server device according to an aspect of the present invention is provided.
A server device connected to a data provider device and a data requester device through a network,
A database for storing interface information for acquiring data from the data provider device;
When a first request for obtaining the data is received from the data requester device, the data is obtained from the data provider device by a second request created based on the interface information stored in the database. And a providing unit that obtains and sends the data to the data requester apparatus.
 また本発明の他の形態に係る方法は、
 データ提供者装置とデータ要求者装置とにネットワークを通じて接続され、前記データ提供者装置からデータを取得するためのインターフェースの情報を記憶するデータベースを有するサーバ装置が実行する方法であって、
 前記データ要求者装置から前記データの取得を要求する第1のリクエストを受け付けると、前記データベースに記憶された前記インターフェースの情報に基づいて作成した第2のリクエストによって前記データ提供者装置から前記データを取得し、前記データ要求者装置へ送出する。
A method according to another aspect of the present invention includes:
A method executed by a server device connected to a data provider device and a data requester device through a network and having a database for storing interface information for acquiring data from the data provider device,
When a first request for obtaining the data is received from the data requester device, the data is obtained from the data provider device by a second request created based on the interface information stored in the database. Obtain and send to the data requester device.
 また本発明の他の形態に係るコンピュータ読み取り可能な記録媒体は、
 データ提供者装置とデータ要求者装置とにネットワークを通じて接続され、前記データ提供者装置からデータを取得するためのインターフェースの情報を記憶するデータベースを有するコンピュータに、
 前記データ要求者装置から前記データの取得を要求する第1のリクエストを受け付けると、前記データベースに記憶された前記インターフェースの情報に基づいて作成した第2のリクエストによって前記データ提供者装置から前記データを取得し、前記データ要求者装置へ送出する処理を行わせるためのプログラムを記録する。
A computer-readable recording medium according to another aspect of the present invention is
A computer connected to a data provider device and a data requester device through a network and having a database for storing interface information for acquiring data from the data provider device.
When a first request for obtaining the data is received from the data requester device, the data is obtained from the data provider device by a second request created based on the interface information stored in the database. A program for acquiring and sending the data requester device is recorded.
 また本発明の他の形態に係る情報処理システムは、
 本発明の一形態に係るサーバ装置と、前記サーバ装置にネットワークを通じて接続されたデータ提供者装置およびデータ要求者装置とから構成される。
An information processing system according to another embodiment of the present invention includes:
A server apparatus according to an embodiment of the present invention, and a data provider apparatus and a data requester apparatus connected to the server apparatus through a network.
 本発明は上述した構成を有することにより、データ要求者の負荷を軽減できると共にサーバ装置のコストを下げることができる。 The present invention having the above-described configuration can reduce the load on the data requester and reduce the cost of the server device.
本発明の第1の実施形態に係る情報処理システムのブロック図である。1 is a block diagram of an information processing system according to a first embodiment of the present invention. 本発明の第1の実施形態に係るサーバ装置が有するデータカタログの一例を示す図である。It is a figure which shows an example of the data catalog which the server apparatus which concerns on the 1st Embodiment of this invention has. 本発明の第1の実施形態に係るサーバ装置の登録部の動作の一例を示すフローチャートである。It is a flowchart which shows an example of operation | movement of the registration part of the server apparatus which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るサーバ装置の検索部の動作の一例を示すフローチャートである。It is a flowchart which shows an example of operation | movement of the search part of the server apparatus which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るサーバ装置の提供部の動作の一例を示すフローチャートである。It is a flowchart which shows an example of operation | movement of the provision part of the server apparatus which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態において、データ要求者装置からデータアクセスAPIが呼び出されたときのサーバ装置の動作の一例を示すシーケンスチャートである。5 is a sequence chart illustrating an example of an operation of a server device when a data access API is called from a data requester device in the first embodiment of the present invention. 本発明の第1の実施形態において、データ要求者装置からデータアクセスAPIが呼び出されたときのサーバ装置の動作の別の例を示すシーケンスチャートである。7 is a sequence chart showing another example of the operation of the server device when the data access API is called from the data requester device in the first embodiment of the present invention. 本発明の第1の実施形態において、データ要求者装置からデータアクセスAPIが呼び出されたときのサーバ装置の動作の他の例を示すシーケンスチャートである。6 is a sequence chart showing another example of the operation of the server device when the data access API is called from the data requester device in the first embodiment of the present invention. 本発明の第1の実施形態において、データ要求者装置からデータアクセスAPIが呼び出されたときのサーバ装置の動作の更に別の例を示すシーケンスチャートである。6 is a sequence chart showing still another example of the operation of the server device when the data access API is called from the data requester device in the first embodiment of the present invention. 本発明の第1の実施形態に係る情報処理システムを適用した採点支援システムの概念図である。1 is a conceptual diagram of a scoring support system to which an information processing system according to a first embodiment of the present invention is applied. 本発明の第1の実施形態に係る情報処理システムを適用したアクティブラーニング度測定システムの概念図である。1 is a conceptual diagram of an active learning degree measurement system to which an information processing system according to a first embodiment of the present invention is applied. 本発明の第1の実施形態に係る情報処理システムを適用した遠隔授業支援システムの概念図である。1 is a conceptual diagram of a remote lesson support system to which an information processing system according to a first embodiment of the present invention is applied. 本発明の第1の実施形態に係る情報処理システムのブロック図である。1 is a block diagram of an information processing system according to a first embodiment of the present invention.
 次に本発明の実施の形態について図面を参照して詳細に説明する。
[第1の実施形態]
 図1は、本発明の第1の実施形態に係る情報処理システムのブロック図である。図1を参照すると、本発明の第1の実施形態に係る情報処理システムは、サーバ装置100と、複数のデータ提供者装置140-1~140-mと、複数のデータ要求者装置150-1~150-nと、これらを相互に接続するネットワーク160とから構成されている。
Next, embodiments of the present invention will be described in detail with reference to the drawings.
[First embodiment]
FIG. 1 is a block diagram of an information processing system according to the first embodiment of the present invention. Referring to FIG. 1, the information processing system according to the first exemplary embodiment of the present invention includes a server device 100, a plurality of data provider devices 140-1 to 140-m, and a plurality of data requester devices 150-1. 150-n and a network 160 that interconnects them.
 データ提供者装置140-1~140-mは、文書、画像、音声などのデータを保有する者が、保有するデータを第三者に公開するために使用するパーソナルコンピュータ、スマートフォンなどの情報処理装置である。データの形式は任意である。例えば、データはJSON形式である。但し、JSON形式以外のデータ形式、例えばXMLであってもよい。また、各データ提供者装置140-1~140-mは、保有するデータを公開する機能を外部から操作するためのインターフェースであるAPIを少なくとも1つ備えている。各データ提供者装置140-1~140-mが保有する上記APIの仕様は任意である。例えば、或るデータ提供者装置が保有する上記APIは、POSTメソッド形式である。また、他のデータ提供者装置が保有する上記APIは、GETメソッド形式である。但し、上記APIはPOSTメソッド形式、および、GETメソッド形式に限定されず、他の形式であってもよい。 The data provider devices 140-1 to 140-m are information processing devices such as personal computers and smartphones that are used by a person who holds data such as documents, images, and voices to release the held data to a third party. It is. The format of the data is arbitrary. For example, the data is in JSON format. However, a data format other than the JSON format, for example, XML may be used. Each of the data provider devices 140-1 to 140-m includes at least one API that is an interface for externally operating a function of disclosing data held therein. The specification of the API held by each data provider device 140-1 to 140-m is arbitrary. For example, the API possessed by a certain data provider device has a POST method format. Further, the API held by other data provider devices is in the GET method format. However, the API is not limited to the POST method format and the GET method format, and may be in other formats.
 各データ提供者装置140-1~140-mは、上記APIによるデータ取得要求を受け付けると、要求されたデータを含むレスポンスを返却するように構成されている。以下、データ提供者装置140-1~140-mが有する上記APIを、データ要求APIと称する。また、個々のデータ提供者装置140-1~140-mを区別しない場合、枝番号を省略して単にデータ提供者装置140と記す。 Each data provider device 140-1 to 140-m is configured to return a response including the requested data upon receiving a data acquisition request by the API. Hereinafter, the API included in the data provider devices 140-1 to 140-m is referred to as a data request API. Further, when the individual data provider devices 140-1 to 140-m are not distinguished, the branch numbers are omitted and simply referred to as the data provider device 140.
 データ要求者装置150-1~150-nは、文書、画像、音声などのデータを要求する者が使用するパーソナルコンピュータ、スマートフォンなどの情報処理装置である。各データ要求者装置150-1~150-nは、APIリクエストを送出し、そのレスポンスを受け取るブラウザ機能を備えている。以下、個々のデータ要求者装置150-1~150-nを区別しない場合、枝番号を省略して単にデータ要求者装置150と記す。 The data requester devices 150-1 to 150-n are information processing devices such as personal computers and smartphones used by those who request data such as documents, images, and sounds. Each of the data requester apparatuses 150-1 to 150-n has a browser function that transmits an API request and receives a response. Hereinafter, when the individual data requester devices 150-1 to 150-n are not distinguished, the branch number is omitted and simply referred to as the data requester device 150.
 サーバ装置100は、データ提供者装置140が保有するデータをデータ要求者装置150へ提供するサービスを実施する者が使用するパーソナルコンピュータなどの情報処理装置である。サーバ装置100は、通信インターフェース部111と、操作入力部112と、画面表示部113と、記憶部120と、演算処理部130とを備えている。 The server apparatus 100 is an information processing apparatus such as a personal computer used by a person who provides a service for providing data held by the data provider apparatus 140 to the data requester apparatus 150. The server device 100 includes a communication interface unit 111, an operation input unit 112, a screen display unit 113, a storage unit 120, and an arithmetic processing unit 130.
 通信インターフェース部111は、例えばデータ通信回路で構成され、有線または無線の通信回線を介して接続されたデータ提供者装置140およびデータ要求者装置150などの各種装置との間でデータ通信を行うように構成されている。操作入力部112は、キーボードやマウスなどの操作入力装置で構成され、オペレータの操作を検出して演算処理部130に出力するように構成されている。画面表示部113は、LCD(Liquid Crystal Display)やPDP(Plasma Display Panel)などの画面表示装置で構成され、演算処理部130からの指示に応じて、操作メニューなどの各種情報を画面表示するように構成されている。 The communication interface unit 111 includes, for example, a data communication circuit, and performs data communication with various devices such as the data provider device 140 and the data requester device 150 connected via a wired or wireless communication line. It is configured. The operation input unit 112 includes an operation input device such as a keyboard and a mouse, and is configured to detect an operator operation and output the operation to the arithmetic processing unit 130. The screen display unit 113 is configured by a screen display device such as an LCD (Liquid Crystal Display) or a PDP (Plasma Display Panel), and displays various information such as an operation menu on the screen according to instructions from the arithmetic processing unit 130. It is configured.
 記憶部120は、ハードディスクやメモリなどの記憶装置で構成され、演算処理部130における各種処理に必要な処理情報およびプログラム121を記憶するように構成されている。プログラム121は、演算処理部130に読み込まれて実行されることにより各種処理部を実現するプログラムであり、通信インターフェース部111などのデータ入出力機能を介して外部装置(図示せず)や記憶媒体(図示せず)から予め読み込まれて記憶部120に保存される。記憶部120に記憶される上記処理情報には、データアクセスAPIの情報122、データカタログ123がある。 The storage unit 120 is configured by a storage device such as a hard disk or a memory, and is configured to store processing information and programs 121 necessary for various processes in the arithmetic processing unit 130. The program 121 is a program that realizes various processing units by being read and executed by the arithmetic processing unit 130, and an external device (not shown) or a storage medium via a data input / output function such as the communication interface unit 111. (Not shown) is read in advance and stored in the storage unit 120. The processing information stored in the storage unit 120 includes data access API information 122 and a data catalog 123.
 データアクセスAPIの情報122は、データ要求者装置150がサーバ装置100からデータを取得する際に使用するインターフェースに関する定義情報である。サーバ装置100は、データ要求者装置150からデータアクセスAPIの情報122で定義されたAPIが呼び出されると、そのAPIによって要求されたデータをデータ提供者装置140から取得し、取得したデータを含むレスポンスを返却するように構成されている。データアクセスAPIの仕様は任意である。例えば、データアクセスAPIは、POSTメソッド形式である。但し、データアクセスAPIはPOSTメソッド形式に限定されず、GETメソッド形式など他の形式であってもよい。 The data access API information 122 is definition information related to an interface used when the data requester device 150 acquires data from the server device 100. When the API defined by the data access API information 122 is called from the data requester device 150, the server device 100 acquires the data requested by the API from the data provider device 140, and a response including the acquired data Is configured to return. The specification of the data access API is arbitrary. For example, the data access API has a POST method format. However, the data access API is not limited to the POST method format, and may be another format such as a GET method format.
 データカタログ123は、データ提供者装置140が公開するデータに関する情報を記憶するデータベースである。図2に、データカタログ123の一例を示す。この例のデータカタログ123は、複数のエントリを有し、各エントリは、リソースID、API連番、データ要求API、リクエストヘッダ、リクエストボディ、クエリストリング、時間制約条件、メタ情報といった項目から構成される。 The data catalog 123 is a database that stores information related to data published by the data provider device 140. FIG. 2 shows an example of the data catalog 123. The data catalog 123 in this example has a plurality of entries, and each entry includes items such as a resource ID, an API serial number, a data request API, a request header, a request body, a query string, a time constraint condition, and meta information. The
 リソースIDは、1つのデータアクセスAPIリクエストによってサーバ装置100から一括して取得できる1または複数のデータに付与された識別番号である。API連番は、リソースIDによって識別されるデータを取得するための1以上のデータ要求APIに割り振られた連続番号である。データ要求APIは、リソースIDによって識別されるデータの全部または一部を取得するためのデータ要求APIのURIである。リクエストヘッダは、データ要求APIのヘッダに必要なリクエストパラメータの名前である。リクエストボディは、データ要求APIのメソッドがPOSTのときにリクエストボディに必要なリクエストパラメータの名前である。クエリストリングは、データ要求APIのメソッドがGETのときに必要なリクエストパラメータの名前である。時間制約条件は、データ要求APIの実行に関する時間的な条件である。メタ情報は、データ本体から抽出された、データ名称、キーワードなどである。 The resource ID is an identification number assigned to one or a plurality of data that can be collectively acquired from the server apparatus 100 by one data access API request. The API sequence number is a serial number assigned to one or more data request APIs for acquiring data identified by the resource ID. The data request API is a URI of the data request API for acquiring all or part of the data identified by the resource ID. The request header is a name of a request parameter necessary for the header of the data request API. The request body is a name of a request parameter necessary for the request body when the data request API method is POST. The query string is the name of a request parameter required when the data request API method is GET. The time constraint condition is a time condition regarding execution of the data request API. The meta information is a data name, a keyword, and the like extracted from the data body.
 例えば、図2の2行目のエントリは、リソースIDが1のデータは、https://dataA.com/v1/aa.jsonというデータ要求APIによってデータ提供者装置140から取得することができることを表している。また、当該データ要求APIは、リクエストヘッダにX-AAという名前のリクエストパラメータを設定し、そのリクエストボディにAbody1という名前のリクエストパラメータを設定する必要があり、当該データ要求APIを実行する時間的な制約は存在しないことを表している。ここで、リクエストパラメータX-AAは、データ要求APIで取得するデータから部分データを選択(抽出)するためのものである。例えば、データ要求APIで取得するデータが、或る市町村の西暦2000年以降の人口統計データである場合、X-AAは例えば年度を指定する。また、図2の2行目のエントリは、メタ情報に、データ名称としてAnameが記載され、その他、図示しないがキーワードなどが記載されている。なお、リクエストヘッダに設定するリクエストパラメータは1つに限定されず、複数であってもよい。例えば、リクエストヘッダにX-AA、X-AAAという名前の2つのリクエストパラメータを設定してもよい。ここで、リクエストパラメータX-AA、X-AAAは、データ要求APIで取得するデータから部分データを選択(抽出)するためのものである。例えば、データ要求APIで取得するデータが、或る市町村の西暦2000年以降の人口統計データである場合、X-AAは例えば年度を指定し、X-AAAは月を指定する。 For example, the entry in the second line in FIG. 2 indicates that the data with resource ID 1 is https: // dataA. com / v1 / aa. This indicates that the data can be acquired from the data provider device 140 by the data request API json. In addition, the data request API needs to set a request parameter named X-AA in the request header and a request parameter named Abody1 in the request body, and the time required to execute the data request API. This means that there is no constraint. Here, the request parameter X-AA is for selecting (extracting) partial data from data acquired by the data request API. For example, when the data acquired by the data request API is demographic data of a certain municipality after the year 2000, X-AA designates a year, for example. In the entry on the second line in FIG. 2, “Name” is described as the data name in the meta information, and a keyword or the like is described although not shown. Note that the number of request parameters set in the request header is not limited to one, and may be plural. For example, two request parameters named X-AA and X-AAA may be set in the request header. Here, the request parameters X-AA and X-AAA are for selecting (extracting) partial data from data acquired by the data request API. For example, when the data acquired by the data request API is demographic data of a certain municipality after the year 2000, X-AA designates a year, for example, and X-AAA designates a month.
 また、図2の3行目~4行目の2つのエントリは、リソースIDが2のデータは、https://dataB.com/v1/bb.jsonというデータ要求APIおよびhttps://dataC.com/v1/cc.jsonというデータ要求APIの合計2つのデータ要求APIによって2つのデータ提供者装置140から取得することができることを表している。また、前者のデータ要求APIでは、リクエストヘッダにX-BBという名前のリクエストパラメータを設定し、そのリクエストボディにBbody1という名前のリクエストパラメータを設定する必要があり、当該データ要求APIを実行する時間的な制約は存在しないことを表している。また、後者のデータ要求APIでは、リクエストヘッダにX-CCという名前のリクエストパラメータを設定し、そのリクエストボディにCbody1という名前のリクエストパラメータを設定する必要があり、当該データ要求APIを実行する時間的な制約は存在しないことを表している。 In addition, two entries in the third to fourth lines in FIG. 2 indicate that data with a resource ID of 2 is https: // dataB. com / v1 / bb. json data request API and https: // dataC. com / v1 / cc. This indicates that the data can be acquired from the two data provider devices 140 by a total of two data request APIs of the data request API json. In the former data request API, it is necessary to set a request parameter named X-BB in the request header and a request parameter named Bbody1 in the request body, and the time required to execute the data request API This means that there is no such restriction. In the latter data request API, it is necessary to set a request parameter named X-CC in the request header and to set a request parameter named Cbody1 in the request body, and the time required to execute the data request API This means that there is no such restriction.
 また、図2の5行目のエントリには、08:00≦t≦18:00という時間制約条件が設定されている。これは、リソースIDが3のデータを、https://dataD.com/v1/dd.jsonというデータ要求APIによってデータ提供者装置140から取得するとき、午前8時00分から午後6時00分までの期間に当該データ要求APIを実行しなければならないことを表している。このような時間制限が設定される理由には、例えば当該データ要求APIを有するデータ提供者装置140に運用時間の制限があるといった事情がある。 Further, a time constraint condition of 08: 00 ≦ t ≦ 18: 00 is set in the entry on the fifth line in FIG. This is because data with a resource ID of 3 is stored at https: // dataD. com / v1 / dd. This indicates that when data is acquired from the data provider device 140 by the data request API “json”, the data request API must be executed in a period from 8:00 am to 6:00 pm. The reason why such a time limit is set is that, for example, the data provider device 140 having the data request API has a limitation on the operation time.
 また、図2の6行目のエントリには、2018/05/01/08:00≦tという時間制約条件が設定されている。これは、リソースIDが4のデータを、https://dataE.com/v1/ee.jsonというデータ要求APIによってデータ提供者装置140から取得するとき、2018年5月1日の午前8時00分以降に当該データ要求APIを実行しなければならないことを表している。このような時間制限が設定される理由には、例えば当該データ要求APIによって提供されるデータが特定の日時を起点に公開されるといった事情がある。 Also, a time constraint condition of 2018/05/01/08: 0 ≦ t is set in the entry on the sixth line in FIG. This is because data with a resource ID of 4 is stored in https: // dataE. com / v1 / ee. When obtaining from the data provider device 140 by the data request API “json”, this indicates that the data request API must be executed after 8:00 am on May 1, 2018. The reason why such a time limit is set is, for example, that the data provided by the data request API is disclosed starting from a specific date and time.
 また、図2の7行目のエントリでは、リクエストヘッダにX-FFという名前のリクエストパラメータを設定し、また、リクエストボディの項目はNULLであり、さらに、クエリストリングの項目にリクエストパラメータの名前としてFf1が記載されている。これは、リソースIDが5のデータを、https://dataF.com/v1/ff.jsonというデータ要求APIによってデータ提供者装置140から取得するとき、メソッドをGETとし、リクエストヘッダにX-FFという名前のリクエストパラメータを設定し、また、クエリストリングにリクエストパラメータFf1を設定する必要があることを表している。 In the entry on the seventh line in FIG. 2, a request parameter named X-FF is set in the request header, the item of the request body is NULL, and the name of the request parameter is set in the item of the query string. Ff1 is described. This is because data with a resource ID of 5 is stored at https: // dataF. com / v1 / ff. When obtaining from the data provider device 140 by the data request API json, it is necessary to set the method as GET, set the request parameter named X-FF in the request header, and set the request parameter Ff1 in the query string Represents that.
 再び図1を参照すると、演算処理部130は、MPUなどのマイクロプロセッサとその周辺回路を有し、記憶部120からプログラム121を読み込んで実行することにより、上記ハードウェアとプログラム121とを協働させて各種処理部を実現するように構成されている。演算処理部130で実現される主な処理部には、登録部131と、検索部132と、提供部133とがある。 Referring to FIG. 1 again, the arithmetic processing unit 130 includes a microprocessor such as an MPU and its peripheral circuits, and reads the program 121 from the storage unit 120 and executes it, thereby cooperating the hardware and the program 121. In this way, various processing units are realized. Main processing units realized by the arithmetic processing unit 130 include a registration unit 131, a search unit 132, and a providing unit 133.
 登録部131は、記憶部120上のデータカタログ123を維持管理するように構成されている。例えば、登録部131は、データ提供者装置140から受信した情報、および操作入力部112から入力された情報に従って、データカタログ123に新規の情報を登録し、或いは登録された情報を削除し、或いは登録された情報を更新するように構成されている。 The registration unit 131 is configured to maintain and manage the data catalog 123 on the storage unit 120. For example, the registration unit 131 registers new information in the data catalog 123 according to information received from the data provider device 140 and information input from the operation input unit 112, or deletes the registered information. It is configured to update registered information.
 検索部132は、記憶部120上のデータカタログ123を検索するように構成されている。例えば、検索部132は、データ要求者装置140から受信したキーワードを含む検索要求に従って、データカタログ123のエントリのメタ情報を検索し、一致するキーワードを有するエントリの内容の全部または一部を検索結果として返却するように構成されている。 The search unit 132 is configured to search the data catalog 123 on the storage unit 120. For example, the search unit 132 searches the meta information of the entry of the data catalog 123 according to the search request including the keyword received from the data requester device 140, and searches all or part of the contents of the entry having the matching keyword as a search result. It is configured to return as.
 提供部133は、データ要求者装置150から要求されたデータをデータ提供者装置140から取得して要求元に提供するように構成されている。例えば、提供部133は、データ要求者装置150からデータアクセスAPIの情報122で定義されたAPIが呼び出されると、データカタログ123に登録されたデータ要求APIのURIなどの情報に基づいて作成したデータ要求APIによってデータ提供者装置140からデータを取得し、データ要求者装置150へ返却するように構成されている。 The providing unit 133 is configured to acquire the data requested from the data requester device 150 from the data provider device 140 and provide it to the request source. For example, when the API defined by the data access API information 122 is called from the data requester device 150, the providing unit 133 creates data based on information such as the URI of the data request API registered in the data catalog 123. Data is acquired from the data provider device 140 by the request API, and is returned to the data requester device 150.
 次に本実施形態に係るサーバ装置100の動作を説明する。 Next, the operation of the server apparatus 100 according to this embodiment will be described.
 図3は、サーバ装置100の登録部131の動作の一例を示すフローチャートである。以下、図3を参照して登録部131の動作を説明する。 FIG. 3 is a flowchart showing an example of the operation of the registration unit 131 of the server apparatus 100. Hereinafter, the operation of the registration unit 131 will be described with reference to FIG.
 登録部131は、データ提供者装置140から登録情報を受信したか否か(ステップS1)、操作入力部112でデータカタログ123に対する登録情報の追加、更新、或いは削除のオペレータ操作が行われたか否かを(ステップS2)、常に監視している。 The registration unit 131 determines whether registration information has been received from the data provider device 140 (step S1), and whether an operation for adding, updating, or deleting registration information has been performed on the data catalog 123 in the operation input unit 112. (Step S2) is constantly monitored.
 本実施形態では、データ提供者装置140は、公開したいデータに関する登録情報を自発的にサーバ装置100へ送信することにより、データカタログ123に登録することができるようになっている。データ提供者装置140から送信される1件分の登録情報には、図2に示すデータ要求API、リクエストヘッダ、リクエストボディ、クエリストリング、時間制約条件、メタ情報の各項目のデータが含まれている。登録部131は、データ提供者装置140からn件分(nは1以上の正の整数)の登録情報を受信すると、データカタログ123にn個の新規エントリを確保し、受信したn件分の登録情報を各エントリに登録する(ステップS3)。このとき登録部131は、n個の新規エントリのリソースIDの項目に新たに採番したリソースIDを登録する。また、n個の新規エントリのAPI連番の項目に1から始まる連番を登録する。 In this embodiment, the data provider device 140 can register in the data catalog 123 by voluntarily transmitting registration information related to data to be disclosed to the server device 100. The registration information for one case transmitted from the data provider device 140 includes data items of data request API, request header, request body, query string, time constraint condition, and meta information shown in FIG. Yes. When the registration unit 131 receives n registration information (n is a positive integer equal to or greater than 1) from the data provider device 140, the registration unit 131 secures n new entries in the data catalog 123 and receives the received n entries. Registration information is registered in each entry (step S3). At this time, the registration unit 131 registers the newly assigned resource ID in the resource ID item of n new entries. Also, a serial number starting from 1 is registered in the API serial number field of n new entries.
 また、登録部131は、操作入力部112からn件分の登録情報を追加するオペレータ操作が行われると、データ提供者装置140からn件分の登録情報を受信した場合と同様の動作を行うことにより、データカタログ123に登録情報を追加する(ステップS4)。また、登録部131は、操作入力部112からデータカタログ123に登録されている登録情報の更新、或いは削除のオペレータ操作が行われると、操作内容に応じてデータカタログ123の登録情報の更新、或いは削除を行う(ステップS4)。 Further, when an operator operation for adding n registration information is performed from the operation input unit 112, the registration unit 131 performs the same operation as when n registration information is received from the data provider device 140. Thus, registration information is added to the data catalog 123 (step S4). The registration unit 131 updates the registration information in the data catalog 123 or updates the registration information registered in the data catalog 123 from the operation input unit 112 according to the operation content. Deletion is performed (step S4).
 上述した登録部131の動作では、任意のデータ提供者装置140がデータカタログ123に登録情報を登録することができる。しかし、登録部131は、データ提供者装置140が正当な権限を有する者であるか否かを確かめる認証を実施し、認証に成功したデータ提供者装置140に限ってデータカタログ123に登録情報を登録し得るように構成してもよい。また登録部131は、正当な権限を有するオペレータか否かを確かめる認証を実施し、認証に成功したオペレータに限って操作入力部112からのデータカタログ123に対する登録情報の追加、更新、削除を可能にしてもよい。 In the operation of the registration unit 131 described above, any data provider device 140 can register registration information in the data catalog 123. However, the registration unit 131 performs authentication to confirm whether or not the data provider device 140 is a person having a legitimate authority, and registers registration information in the data catalog 123 only for the data provider device 140 that has been successfully authenticated. You may comprise so that it can register. Further, the registration unit 131 performs authentication for confirming whether or not the operator has a legitimate authority, and only the operator who has succeeded in authentication can add, update, and delete registration information from the operation input unit 112 to the data catalog 123. It may be.
 また、登録部131は、データ提供者装置140へデータ登録を促進する問合せを行うようにしてもよい。例えば、互いに関連する複数のデータ提供者装置140の一部のみが登録を行っている場合、登録部131は未登録のデータ提供者装置140に対して登録を促す問合せを行うようにしてもよい。 Also, the registration unit 131 may make an inquiry to the data provider device 140 to promote data registration. For example, when only a part of a plurality of data provider devices 140 related to each other performs registration, the registration unit 131 may make an inquiry to the unregistered data provider device 140 to urge registration. .
 図4は、サーバ装置100の検索部132の動作の一例を示すフローチャートである。以下、図4を参照して検索部132の動作を説明する。 FIG. 4 is a flowchart showing an example of the operation of the search unit 132 of the server device 100. Hereinafter, the operation of the search unit 132 will be described with reference to FIG.
 検索部132は、データ要求者装置150から検索要求を受信したか否かを常に監視している(ステップS11)。本実施形態では、データ要求者装置150は、データカタログ123のメタ情報に含まれるキーワードを検索キーワードとして検索できるようになっている。検索部132は、データ要求者装置150から検索要求を受信すると、検索要求で指定された検索キーワードをメタ情報に含むデータカタログ123のエントリを検索する(ステップS12)。次に、検索部132は、検索要求元のデータ要求者装置150に検索結果を返却する(ステップS13)。検索部132は、検索成功時、検索に成功したデータカタログ123のエントリに登録された情報の全てあるいは一部分を含む検索結果を返却する。一部分は、例えば、少なくともリソースID、リクエストヘッダ、リクエストボディ、クエリストリングであってよい。 The search unit 132 always monitors whether or not a search request has been received from the data requester device 150 (step S11). In the present embodiment, the data requester device 150 can search for keywords included in the meta information of the data catalog 123 as search keywords. When receiving the search request from the data requester device 150, the search unit 132 searches for an entry in the data catalog 123 that includes the search keyword specified in the search request in the meta information (step S12). Next, the search unit 132 returns the search result to the data requester device 150 that is the search request source (step S13). When the search is successful, the search unit 132 returns a search result including all or part of the information registered in the entry of the data catalog 123 that has been successfully searched. The portion may be at least a resource ID, a request header, a request body, and a query string, for example.
 上述した検索部132の動作では、任意のデータ要求者装置150がデータカタログ123を検索することができる。しかし、検索部132は、データ要求者装置150が正当な権限を有する者であるか否かを確かめる認証を実施し、認証に成功したデータ要求者装置150に限ってデータカタログ123の検索を行えるようにしてもよい。 In the operation of the search unit 132 described above, any data requester device 150 can search the data catalog 123. However, the search unit 132 performs authentication for confirming whether or not the data requester device 150 has a legitimate authority, and can search the data catalog 123 only for the data requester device 150 that has been successfully authenticated. You may do it.
 図5は、サーバ装置100の提供部133の動作の一例を示すフローチャートである。以下、図5を参照して提供部133の動作を説明する。 FIG. 5 is a flowchart showing an example of the operation of the providing unit 133 of the server device 100. Hereinafter, the operation of the providing unit 133 will be described with reference to FIG.
 提供部133は、データ要求者装置150から取得要求を受信したか否かを監視している(ステップS21)。本実施形態では、データ要求者装置150は、データアクセスAPIを呼出すことによって、データカタログ123のリソースIDを指定してデータの取得を要求することができるようになっている。提供部133は、データ要求者装置150から取得要求を受信すると、取得要求で指定されたリソースIDで特定されるデータをデータ提供者装置140から取得する(ステップS22)。次に、提供部133は、取得したデータをデータアクセスAPIに対するレスポンスとして要求元のデータ要求者装置150に返却する(ステップS23)。 The providing unit 133 monitors whether an acquisition request has been received from the data requester device 150 (step S21). In the present embodiment, the data requester device 150 can request acquisition of data by specifying the resource ID of the data catalog 123 by calling the data access API. When receiving the acquisition request from the data requester device 150, the providing unit 133 acquires the data specified by the resource ID specified in the acquisition request from the data provider device 140 (step S22). Next, the providing unit 133 returns the acquired data as a response to the data access API to the requesting data requester device 150 (step S23).
 上述した提供部133の動作では、任意のデータ要求者装置150がデータの取得を要求することができる。しかし、提供部133は、データ要求者装置150が正当な権限を有する者であるか否かを確かめる認証を実施し、認証に成功したデータ要求者装置150に限ってデータの取得が行えるようにしてもよい。 In the operation of the providing unit 133 described above, an arbitrary data requester device 150 can request acquisition of data. However, the providing unit 133 performs authentication for confirming whether or not the data requester device 150 has a legitimate authority so that only the data requester device 150 that has succeeded in authentication can acquire data. May be.
 続いて、提供部133の詳細な動作を図2に示すカタログデータの例を用いて説明する。 Subsequently, the detailed operation of the providing unit 133 will be described using an example of catalog data shown in FIG.
 図6は、データ要求者装置150-1からデータアクセスAPIが呼び出されたときのサーバ装置100の動作の一例を示すシーケンスチャートである。図6の例では、データ要求者装置150-1は、データアクセスAPIのリクエストヘッダでリソースIDとして値1を設定し、またリクエストボディで、データ取得APIのリクエストヘッダで必要となるリクエストパラメータX-AAの値として値10を、またリクエストボディで必要となるリクエストパラメータAbody1として値3を設定している。サーバ装置100の提供部133は、データアクセスAPIによるリクエストを受け付けると(ステップS31)、リソースIDの値が1のデータを取得するためのデータ取得APIを組み立てて、リクエストを行う(ステップS32)。図2のデータカタログを参照すると、リソースID=1のエントリに登録されているデータ要求APIは、https://dataA.com/v1/aa.jsonであり、必要なリクエストヘッダはX-AA、リクエストボディはAbody1である。そのため、提供部133は、図6のステップS32に記載するようなデータ取得APIを組み立てて、リクエストを行う。 FIG. 6 is a sequence chart showing an example of the operation of the server device 100 when the data access API is called from the data requester device 150-1. In the example of FIG. 6, the data requester device 150-1 sets the value 1 as the resource ID in the request header of the data access API, and the request parameter X− required in the request header of the data acquisition API in the request body. The value 10 is set as the value of AA, and the value 3 is set as the request parameter Abody1 required in the request body. When receiving the request by the data access API (step S31), the providing unit 133 of the server apparatus 100 assembles a data acquisition API for acquiring data having a resource ID value of 1 and makes the request (step S32). Referring to the data catalog of FIG. 2, the data request API registered in the entry with the resource ID = 1 is https: // dataA. com / v1 / aa. json, the required request header is X-AA, and the request body is Abody1. Therefore, the providing unit 133 makes a request by assembling a data acquisition API as described in step S32 of FIG.
 リクエスト先のデータ提供者装置140-1は、データアクセスAPIによるリクエストを受け付けると、リクエストパラメータX-AA=10、Abody1=3によって特定されるデータを含むレスポンスをサーバ装置100に返却する。図6の例では、ステータスコードは200(OK)であり、レスポンスヘッダにステータス名aaとして値AAが含まれ、レスポンスボディに項目aa1の値としてAAA1が含まれている。 When receiving the request by the data access API, the request destination data provider apparatus 140-1 returns a response including data specified by the request parameters X-AA = 10 and Abody1 = 3 to the server apparatus 100. In the example of FIG. 6, the status code is 200 (OK), the response header includes the value AA as the status name aa, and the response body includes AAA1 as the value of the item aa1.
 サーバ装置100は、データ提供者装置140-1から上記レスポンスを受信すると、受信したレスポンスの内容に基づいて、データアクセスAPIの仕様に合致したレスポンスを編集し、データ要求者装置150-1に返却する(ステップS34)。図6の例では、ステータスコードは200(OK)であり、レスポンスヘッダにステータス名Acs-Statusとして値AAが含まれ、レスポンスボディに項目aa1の値としてAAA1が含まれている。 When the server apparatus 100 receives the response from the data provider apparatus 140-1, the server apparatus 100 edits a response that matches the specifications of the data access API based on the content of the received response, and returns the response to the data requester apparatus 150-1. (Step S34). In the example of FIG. 6, the status code is 200 (OK), the response header includes the value AA as the status name Acs-Status, and the response body includes AAA1 as the value of the item aa1.
 図7は、データ要求者装置150-1からデータアクセスAPIが呼び出されたときのサーバ装置100の別の動作例を示すシーケンスチャートである。図7の例では、データ要求者装置150-1は、データアクセスAPIのリクエストヘッダでリソースIDとして値2を設定し、またリクエストボディで、API連番1のデータ取得APIのリクエストヘッダで必要となるリクエストパラメータX-BBの値として値11を、API連番2のデータ取得APIのリクエストヘッダで必要となるリクエストパラメータX-CCの値として値12を設定し、またAPI連番1のデータ取得APIのリクエストボディで必要となるリクエストパラメータBbody1として値4を、API連番2のデータ取得APIのリクエストバディで必要となるリクエストパラメータCbody1として値5を設定している。サーバ装置100の提供部133は、データアクセスAPIによるリクエストを受け付けると(ステップS41)、リソースIDの値が2のデータを取得するためのデータ取得APIを組み立てて、リクエストを行う(ステップS42) FIG. 7 is a sequence chart showing another operation example of the server apparatus 100 when the data access API is called from the data requester apparatus 150-1. In the example of FIG. 7, the data requester device 150-1 sets a value 2 as the resource ID in the request header of the data access API, and is required in the request header of the data acquisition API of API sequence number 1 in the request body. The value 11 is set as the value of the request parameter X-BB and the value 12 is set as the value of the request parameter X-CC required in the request header of the data acquisition API of the API serial number 2, and the data acquisition of the API serial number 1 is performed. The value 4 is set as the request parameter Bbody1 required in the API request body, and the value 5 is set as the request parameter Cbody1 required in the data acquisition API request buddy of the API serial number 2. When receiving the request by the data access API (step S41), the providing unit 133 of the server apparatus 100 assembles a data acquisition API for acquiring data having a resource ID value of 2 and makes the request (step S42).
 図2のデータカタログを参照すると、リソースID=2のエントリに登録されているデータ要求APIは、API連番1とAPI連番2との2つ存在する。そのため、提供部133は、先ずステップS42に記載するようなAPI連番1のデータ要求APIを組み立てて、リクエストを行う(ステップS42)。リクエスト先のデータ提供者装置140-2は、上記API連番1のデータアクセスAPIによるリクエストを受け付けると、リクエストパラメータX-BB=11、Bbody1=4によって特定されるデータを含むレスポンスをサーバ装置100に返却する(ステップS43)。図7の例では、ステータスコードは200(OK)であり、レスポンスヘッダにステータス名bbとして値BBが含まれ、レスポンスボディに項目bb1の値としてBBB1が含まれている。 Referring to the data catalog of FIG. 2, there are two data request APIs registered in the entry of resource ID = 2, API sequence number 1 and API sequence number 2. For this reason, the providing unit 133 first makes a request by assembling the data request API of API serial number 1 as described in step S42 (step S42). When receiving the request by the data access API of the API serial number 1, the request destination data provider device 140-2 sends a response including data specified by the request parameters X-BB = 11, Bbody1 = 4 to the server device 100. (Step S43). In the example of FIG. 7, the status code is 200 (OK), the response header includes the value BB as the status name bb, and the response body includes BBB1 as the value of the item bb1.
 次に、提供部133は、ステップS44に記載するようなAPI連番2のデータ要求APIを組み立てて、リクエストを行う。リクエスト先のデータ提供者装置140-3は、上記API連番2のデータアクセスAPIによるリクエストを受け付けると、リクエストパラメータX-CC=12、Cbody1=5によって特定されるデータを含むレスポンスをサーバ装置100に返却する(ステップS45)。図7の例では、ステータスコードは200(OK)であり、レスポンスヘッダはなく、レスポンスボディに項目cc1の値としてCCC1が含まれている。 Next, the providing unit 133 makes a request by assembling the data request API of API serial number 2 as described in step S44. When receiving the request by the data access API of the API serial number 2, the request destination data provider apparatus 140-3 sends a response including data specified by the request parameters X-CC = 12, Cbody1 = 5 to the server apparatus 100. (Step S45). In the example of FIG. 7, the status code is 200 (OK), there is no response header, and CCC1 is included as the value of the item cc1 in the response body.
 サーバ装置100は、全てのAPI連番のデータ要求APIによるリクエストとそのレスポンスの受信を終えると、受信した各レスポンスの内容に基づいて、データアクセスAPIの仕様に合致したレスポンスを編集し、データ要求者装置150-1に返却する(ステップS46)。図7の例では、ステータスコードは200(OK)であり、レスポンスヘッダにステータス名Acs-Statusとして値BBが含まれ、レスポンスボディに項目bb1の値としてBBB1、項目cc1の値としてCCC1が含まれている。上記の説明では、サーバ装置100は、データ提供者装置140-2、140-3から全てのレスポンスを受信してから、データ要求者装置150-1にレスポンスを返信した。しかし、サーバ装置100は、データ提供者装置からレスポンスを受信しだい、データ要求者装置に返信してもよい。即ち、サーバ装置100は、データ提供者装置140-2からレスポンスを受信すると、受信したレスポンスの内容に基づいて、データアクセスAPIの仕様に合致したレスポンスを編集し、データ要求者装置150-1に返却する。また、サーバ装置100は、データ提供者装置140-3からレスポンスを受信すると、受信したレスポンスの内容に基づいて、データアクセスAPIの仕様に合致したレスポンスを編集し、データ要求者装置150-1に返却する。この場合、データ要求者装置150-1は、1つのリクエストに対して複数のレスポンスが返信されることになる。そのため、サーバ装置100は、データ要求者装置150-1が複数のレスポンスのそれぞれを識別できるようにレスポンス番号を付与し、或いはそれぞれのレスポンスが最後のレスポンスか否かを示す標識を付与するようにしてもよい。 When the server device 100 finishes receiving all API serial number data request API requests and responses, the server device 100 compiles a response that conforms to the specifications of the data access API based on the content of each received response, and requests the data request. Return to the user device 150-1 (step S46). In the example of FIG. 7, the status code is 200 (OK), the response header includes the value BB as the status name Acs-Status, the response body includes BBB1 as the value of the item bb1, and CCC1 as the value of the item cc1. ing. In the above description, the server device 100 receives all responses from the data provider devices 140-2 and 140-3, and then returns the response to the data requester device 150-1. However, the server device 100 may return the response to the data requester device as soon as the response is received from the data provider device. That is, when the server apparatus 100 receives a response from the data provider apparatus 140-2, the server apparatus 100 edits the response conforming to the data access API specification based on the content of the received response, and sends it to the data requester apparatus 150-1. return. Further, when the server apparatus 100 receives a response from the data provider apparatus 140-3, the server apparatus 100 edits a response that matches the specification of the data access API based on the content of the received response, and sends it to the data requester apparatus 150-1. return. In this case, the data requester apparatus 150-1 returns a plurality of responses to one request. Therefore, the server apparatus 100 assigns a response number so that the data requester apparatus 150-1 can identify each of a plurality of responses, or adds an indicator indicating whether each response is the last response. May be.
 図8は、データ要求者装置150-1からデータアクセスAPIが呼び出されたときのサーバ装置100の更に別の動作例を示すシーケンスチャートである。図8の例では、データ要求者装置150-1は、データアクセスAPIのリクエストヘッダでリソースIDとして値3を設定している。サーバ装置100の提供部133は、データアクセスAPIによるリクエストを受け付けると(ステップS51)、リソースIDの値が3のデータを取得するためのデータ取得APIを組み立てて、リクエストを行おうとするが、図2のデータカタログを参照すると、リソースID=3のエントリには時間制約条件が設定されている。そのため、提供部133は、データを取得するタイミングを制御する。 FIG. 8 is a sequence chart showing still another operation example of the server apparatus 100 when the data access API is called from the data requester apparatus 150-1. In the example of FIG. 8, the data requester device 150-1 sets the value 3 as the resource ID in the request header of the data access API. When the providing unit 133 of the server apparatus 100 receives a request by the data access API (step S51), the providing unit 133 attempts to make a request by assembling a data acquisition API for acquiring data having a resource ID value of 3. Referring to the data catalog 2, a time constraint condition is set for the entry with resource ID = 3. Therefore, the providing unit 133 controls the timing for acquiring data.
 具体的には、提供部133は、現在時刻と時間制約条件とに基づいて、直ちにリクエスト可能か否か、直ちにリクエスト可能でなければ何時以降にリクエスト可能になるかを決定する(ステップS52)。08:00≦t≦18:00という時間制約条件の場合、提供部133は、現在時刻が8時00分から18時00分までの時間帯であれば、直ちにリクエスト可能であると決定する。また、現在時刻が0時00分以降、8時00分未満であれば、提供部133は、当日の8時00分以降にリクエスト可能であると決定する。また、現在時刻が18時00分以降、24時00分未満であれば、提供部133は、翌日の8時00分以降にリクエスト可能であると決定する。提供部133は、直ちにリクエスト可能であれば、可及的速やかにリクエストを行う(ステップS53)。また、提供部133は、直ちにリクエスト可能でなければ、リクエスト可能な時間帯に入るまでリクエストを保留する。そして、提供部133は、リクエスト可能な時間帯に入ると、保留してあったリクエストを実施する(ステップS53)。リクエスト先のデータ提供装置140-4からのレスポンスの受信(ステップS54)、データ要求者装置150-1へのレスポンスの送出(ステップS55)は、図6のステップS33、S34と同様に行われる。上記説明では、提供部133は、保留してあったリクエストを自動で実施した。しかし、提供部133は、保留してあったリクエストを実施する前に要求元のデータ要求者装置150-1に問合せを行うようにしてもよい。即ち、提供部133は、再度データ要求者装置150-1に確認してから保留してあったリクエストを実施してもよい。 Specifically, the providing unit 133 determines whether or not the request can be made immediately based on the current time and the time constraint condition, and whether or not the request can be made later if the request is not immediately available (step S52). In the case of the time constraint condition of 08: 00 ≦ t ≦ 18: 00, the providing unit 133 determines that the request can be made immediately if the current time is the time zone from 8:00 to 18:00. If the current time is after 0:00 and less than 8:00, the providing unit 133 determines that the request can be made after 8:00 on that day. If the current time is after 18:00 and less than 24:00, the providing unit 133 determines that the request can be made after 8:00 on the next day. The providing unit 133 makes a request as soon as possible if the request can be made immediately (step S53). If the requesting unit 133 cannot immediately request, the providing unit 133 suspends the request until a requestable time zone is entered. And if the provision part 133 enters into the time slot | zone which can be requested, it will implement the pending request (step S53). The reception of the response from the request destination data providing apparatus 140-4 (step S54) and the transmission of the response to the data requester apparatus 150-1 (step S55) are performed in the same manner as steps S33 and S34 of FIG. In the above description, the providing unit 133 automatically implemented the pending request. However, the providing unit 133 may make an inquiry to the requesting data requester apparatus 150-1 before executing the pending request. That is, the providing unit 133 may execute the request that has been suspended after confirming with the data requester device 150-1 again.
 図9は、データ要求者装置150-1からデータアクセスAPIが呼び出されたときのサーバ装置100の更に別の動作例を示すシーケンスチャートである。図9の例では、データ要求者装置150-1は、データアクセスAPIのリクエストヘッダでリソースIDとして値5を設定し、またリクエストボディで、データ取得APIのリクエストヘッダで必要となるリクエストパラメータX-FFの値として値14を、またクエリストリングで必要となるリクエストパラメータFf1として値5を設定している。サーバ装置100の提供部133は、データアクセスAPIによるリクエストを受け付けると(ステップS61)、リソースIDの値が5のデータを取得するためのデータ取得APIを組み立てて、リクエストを行う(ステップS62)。図2のデータカタログを参照すると、リソースID=5のエントリに登録されているデータ要求APIのメソッドはGETである。そのため、提供部133は、図9のステップS62に記載するようなデータ取得APIを組み立てて、リクエストを行う。リクエスト先のデータ提供装置140-5からのレスポンスの受領(ステップS63)、データ要求者装置150-1へのレスポンスの送出(ステップS64)は、図6のステップS33、S34と同様に行われる。 FIG. 9 is a sequence chart showing still another operation example of the server apparatus 100 when the data access API is called from the data requester apparatus 150-1. In the example of FIG. 9, the data requester device 150-1 sets the value 5 as the resource ID in the request header of the data access API, and the request parameter X− required in the request header of the data acquisition API in the request body. The value 14 is set as the FF value, and the value 5 is set as the request parameter Ff1 required in the query string. When receiving the request by the data access API (step S61), the providing unit 133 of the server apparatus 100 assembles a data acquisition API for acquiring data having a resource ID value of 5 and makes the request (step S62). Referring to the data catalog of FIG. 2, the method of the data request API registered in the entry with resource ID = 5 is GET. Therefore, the providing unit 133 makes a request by assembling a data acquisition API as described in step S62 of FIG. Reception of a response from the request destination data providing apparatus 140-5 (step S63) and transmission of a response to the data requester apparatus 150-1 (step S64) are performed in the same manner as steps S33 and S34 of FIG.
 以上説明したように、本実施形態によれば、以下のような効果が得られる。 As described above, according to the present embodiment, the following effects can be obtained.
 サーバ装置100のコストを下げることができる。その理由は、サーバ装置100は、データ要求者装置150からデータの取得が要求されると、該当するデータを保有するデータ提供者装置140からデータを取得してデータ要求者装置150へ提供するように構成されているため、データ提供者装置140から取得したデータを事前に保持しておく大容量なデータベースを必要としないためである。 The cost of the server device 100 can be reduced. The reason is that when the data requester device 150 requests acquisition of data, the server device 100 acquires the data from the data provider device 140 that holds the corresponding data and provides the data requester device 150 with the data. This is because a large-capacity database that holds data acquired from the data provider device 140 in advance is not required.
 データ要求者の負荷を軽減することができる。その理由は、データ要求者装置150からデータの取得を要求する者は、取得したいデータを保有するデータ提供者装置140へ個別にリクエストを出す必要がなく、サーバ装置100に対して同じインターフェース(データアクセスAPI)を通じてリクエストを出せばよいためである。 ・ ・ ・ The load on the data requester can be reduced. The reason is that a person who requests acquisition of data from the data requester apparatus 150 does not need to individually make a request to the data provider apparatus 140 holding the data to be acquired, and the same interface (data This is because a request may be issued through the access API).
 複数のデータ要求者装置150間でデータを取得するためのデータ取得APIの仕様(例えばPOSTとGET)が相違する場合であっても、データ要求者は、サーバ装置100に対して同じインターフェース(データアクセスAPI)を通じてリクエストを出すことができる。その理由は、サーバ装置100が、データカタログ123に登録された各データ提供者装置140のデータ取得APIの情報とデータ要求者から指定されたリクエストパラメータの値に基づいて、必要となるデータ要求APIを自動的に組み立てるためである。 Even when the data acquisition API specifications (eg, POST and GET) for acquiring data are different among the plurality of data requester devices 150, the data requester can use the same interface (data A request can be issued through an access API. The reason is that the server apparatus 100 needs the data request API required based on the data acquisition API information of each data provider apparatus 140 registered in the data catalog 123 and the value of the request parameter specified by the data requester. Is to assemble automatically.
 データ要求者は、複数のデータ提供者装置140から取得するデータを1回のデータアクセスAPIリクエストにより一括して取得することができる。その理由は、サーバ装置100が、データ要求者が指定したリソースIDに対応してデータカタログ123に登録された複数のエントリの内容に基づいて複数のデータ取得APIを作成して、複数のデータ提供者装置140にリクエストを出し、それら複数のデータ提供者装置140からの複数のレスポンスを1つのレスポンスに編集してデータ要求者に返却するためである。 The data requester can acquire the data acquired from the plurality of data provider devices 140 all at once by one data access API request. The reason is that the server apparatus 100 creates a plurality of data acquisition APIs based on the contents of a plurality of entries registered in the data catalog 123 corresponding to the resource ID specified by the data requester, and provides a plurality of data This is because a request is sent to the requester device 140, a plurality of responses from the plurality of data provider devices 140 are edited into one response and returned to the data requester.
 データ要求者は、取得するデータが公開される時間的な制限にかかわらず都合のよいときにデータの取得を要求することができる。その理由は、サーバ装置100が、データ提供者装置140からデータを取得する時間的な制限をデータカタログ123で管理し、データを取得するタイミング、即ちデータ取得APIを呼出すタイミングを制御するためである。 The data requester can request data acquisition at a convenient time regardless of the time limit for the data to be acquired. The reason is that the server device 100 manages the time limit for acquiring data from the data provider device 140 in the data catalog 123 and controls the timing of acquiring data, that is, the timing of calling the data acquisition API. .
 続いて、本発明は教育分野のみに適用が限定されるものではないが、本実施形態に係る情報処理システムを、初中等教育システムに適用した幾つかの例を説明する。 Subsequently, although the application of the present invention is not limited only to the education field, some examples in which the information processing system according to the present embodiment is applied to an elementary and secondary education system will be described.
(1)採点支援
 図10は、採点支援システムの概念図である。図10に示されるように、採点支援システムは、解答作成、解答入力、採点支援の3つの段階で、本実施形態に係る情報処理システムを使用する。
(1) Scoring support FIG. 10 is a conceptual diagram of a scoring support system. As shown in FIG. 10, the scoring support system uses the information processing system according to the present embodiment in three stages of answer creation, answer input, and scoring support.
 解答作成の段階では、教員が使用するデータ提供者装置140は、テストの解答情報を公開するためにサーバ装置100のデータカタログ123に登録する。 In the answer creation stage, the data provider device 140 used by the teacher registers in the data catalog 123 of the server device 100 in order to disclose the answer information of the test.
 解答入力の段階では、解答の入力を支援する者が使用するデータ提供者装置140は、出題されたテストに対して生徒が入力した手書き文字、音声などによる解答をテキスト化して公開するためにサーバ装置100のデータカタログ123に登録する。 In the answer input stage, the data provider device 140 used by the person who supports the input of the answer is a server for publishing the answer by handwritten characters, voices, etc. inputted by the student to the test given as a text. Register in the data catalog 123 of the device 100.
 採点支援の段階では、採点者が使用するデータ要求者装置150は、解答情報をサーバ装置100経由で教員が使用するデータ提供者装置140から取得する。また、上記データ要求者装置150は、学校別かつ生徒別の解答データをサーバ装置100経由で解答入力者のデータ提供者装置140から取得する。そして、採点者が使用するデータ提供者装置140は、上記取得した情報に基づいて採点を行い、各種の分析を実施し、処理結果を公開するためにサーバ装置100のデータカタログ123に登録する。処理結果には、記述採点結果データ(正誤結果、点数(部分点)、正誤箇所)、生徒別の採点結果の統計データ(得点推移、習熟度)、集計単位(学校別・クラス別など)による誤答分析データ、集計単位(学校別・クラス別など)による採点集計データなどがある。そして、教員が使用するデータ要求者装置150は、サーバ装置100経由で採点者が使用するデータ提供者装置140から上記の処理結果を取得する。 In the stage of scoring support, the data requester device 150 used by the scorer acquires answer information from the data provider device 140 used by the teacher via the server device 100. The data requester device 150 obtains answer data for each school and each student from the data provider device 140 of the answer input person via the server device 100. The data provider device 140 used by the scorer performs scoring based on the acquired information, performs various analyses, and registers the data in the data catalog 123 of the server device 100 in order to disclose the processing results. Processing results include written scoring result data (correct / incorrect results, points (partial points), correct / incorrect locations), statistical data of scoring results by student (score transition, proficiency), and counting units (by school, by class, etc.) There are wrong answer analysis data, scoring data by counting units (by school, by class, etc.). Then, the data requester device 150 used by the teacher acquires the processing result from the data provider device 140 used by the grader via the server device 100.
(2)アクティブラーニング度測定
 図11は、アクティブラーニング度測定システムの概念図である。図11に示されるように、アクティブラーニング度測定システムは、実施・収集、定量化、分析・反映の3つの段階で、本実施形態に係る情報処理システムを使用する。
(2) Active Learning Degree Measurement FIG. 11 is a conceptual diagram of an active learning degree measurement system. As shown in FIG. 11, the active learning degree measurement system uses the information processing system according to the present embodiment in three stages of implementation / collection, quantification, and analysis / reflection.
 実施・収集の段階では、教室で授業を受けている生徒の画像および音声をモニタしているデータ提供者装置140は、取得した画像や音声データを公開するためにサーバ装置100のカタログデータに登録する。また、そのデータ提供者装置140は、音声データや画像を解析して得た生徒毎の音声データを公開するためにサーバ装置100のカタログデータに登録する。 In the implementation / collection stage, the data provider device 140 that monitors the images and sounds of students taking classes in the classroom is registered in the catalog data of the server device 100 in order to publish the acquired images and sound data. To do. Further, the data provider device 140 registers the voice data for each student obtained by analyzing the voice data and images in the catalog data of the server device 100.
 定量化の段階では、定量化に使用するデータ要求者装置150は、生徒毎の音声データをサーバ装置100経由で上記データ提供者装置140から取得し、活気度(盛り上がり、盛り下がり度合)と感情変化(喜び、怒り、悲しみ、元気度)を分析し、また音声データをテキスト化する。また、上記データ提供者装置140は、活気度の分析結果、感情変化の分析結果、テキスト化された音声データを公開するためにサーバ装置100のカタログデータに登録する。 In the quantification stage, the data requester device 150 used for quantification acquires voice data for each student from the data provider device 140 via the server device 100, and the degree of liveliness (rising and falling) and emotions. Analyzes changes (joy, anger, sadness, spirit) and converts voice data into text. Further, the data provider device 140 registers in the catalog data of the server device 100 in order to publish the analysis result of vitality, the analysis result of emotion change, and the voice data converted into text.
 分析・反映の段階では、分析者が使用するデータ要求者装置150は、サーバ装置100経由で定量化に使用するデータ提供者装置140から活気度の分析結果、感情変化の分析結果、音声テキスト、画像データを取得する。また、分析者が使用するデータ提供者装置140は、上記の活気度の分析結果、感情変化の分析結果、音声テキスト、画像データを解析して、発言変化の特異点情報、感情変化の特異点情報を検出し、また特異点と画像・音声のオーサリングデータを作成し、それらを公開するためにサーバ装置100のカタログデータに登録する。具体的には、グループ討議の時系列による討議内容データ、誰がいつ、どのような発言をして、討議がどのような状態で行われたか、討議の中で頻出した語句、語彙などの統計データを公開するためにサーバ装置100のカタログデータに登録する。そして、教員が使用するデータ要求者装置150は、サーバ装置100経由で分析者が使用するデータ提供者装置140から分析結果等を取得し、生徒別のカルテなどを作成する。 At the stage of analysis / reflection, the data requester device 150 used by the analyst receives the vitality analysis result, the emotion change analysis result, the voice text, the data provider device 140 used for quantification via the server device 100. Get image data. Further, the data provider device 140 used by the analyst analyzes the above vitality analysis result, emotion change analysis result, voice text, and image data to analyze the singularity information of the speech change and the singularity of the emotion change. Information is detected, authoring data of singular points and images / sounds are created, and registered in the catalog data of the server apparatus 100 in order to make them public. Specifically, time-series discussion content data of group discussions, who, when and what remarks were made, in what state discussions were made, statistical data such as phrases and vocabulary that occurred frequently during discussions Is registered in the catalog data of the server apparatus 100 in order to make it public. Then, the data requester device 150 used by the teacher obtains the analysis result from the data provider device 140 used by the analyst via the server device 100, and creates a chart for each student.
(3)遠隔授業支援システム
 図12は、遠隔授業支援システムの概念図である。図12に示されるように、遠隔授業支援システムでは、教室に設置されたデータ提供者装置140が、授業の様子を撮影した動画データを公開するためにサーバ装置100のカタログデータに登録する。授業の様子を撮影した動画データは、データ要求者装置150からサーバ装置100経由で取得し、各種のアプリケーションに利用することができる。例えば、データ要求者装置150は、取得した動画データを分析し、生徒の視線データや表情データを生成し、さらにそれらのデータに基づいて生徒の集中度を分析する。また、データ要求者装置150は、取得した動画データを分析し、生徒の発話内容(テキスト)データを生成する。また、データ要求者装置150は、取得した動画データを分析し、顔認証による本人特定データを生成する。
(3) Distance learning support system FIG. 12 is a conceptual diagram of a distance learning support system. As shown in FIG. 12, in the remote lesson support system, the data provider device 140 installed in the classroom registers in the catalog data of the server device 100 in order to publish the moving image data that captures the state of the lesson. The moving image data capturing the state of the lesson can be acquired from the data requester device 150 via the server device 100 and used for various applications. For example, the data requester device 150 analyzes the acquired moving image data, generates student gaze data and facial expression data, and further analyzes the student's concentration based on those data. In addition, the data requester device 150 analyzes the acquired moving image data and generates utterance content (text) data of the student. In addition, the data requester device 150 analyzes the acquired moving image data and generates person identification data based on face authentication.
[第2の実施形態]
 次に本発明の第2の実施形態について説明する。図13は、本発明の第2の実施形態に係る情報処理システムのブロック図である。
[Second Embodiment]
Next, a second embodiment of the present invention will be described. FIG. 13 is a block diagram of an information processing system according to the second embodiment of the present invention.
 図13を参照すると、本実施形態に係る情報処理システム200は、サーバ装置210と、データ提供者装置220と、データ要求者装置230と、それらを相互に接続するネットワーク240とで構成される。 Referring to FIG. 13, the information processing system 200 according to the present embodiment includes a server device 210, a data provider device 220, a data requester device 230, and a network 240 that connects them to each other.
 データ提供者装置220は、公開データなどのデータを提供する者が使用する情報処理装置である。データ提供者装置220は、例えば図1のデータ提供者装置140と同様に構成することができるが、それに限定されない。データ要求者装置230は、公開データなどのデータを要求する者が使用する情報処理装置である。データ要求者装置230は、例えば図1のデータ要求者装置150と同様に構成することができるが、それに限定されない。 The data provider device 220 is an information processing device used by a person who provides data such as public data. The data provider device 220 can be configured in the same manner as the data provider device 140 of FIG. 1, for example, but is not limited thereto. The data requester device 230 is an information processing device used by a person who requests data such as public data. The data requester device 230 can be configured in the same manner as the data requester device 150 of FIG. 1, for example, but is not limited thereto.
 サーバ装置210は、データ要求者装置230からネットワーク240を通じて要求されたデータを、ネットワーク240を通じてデータ提供者装置220から取得し、ネットワーク240を通じてデータ要求者装置230へ提供する情報処理装置である。サーバ装置210は、データベース211と提供部212とを備えている。 The server device 210 is an information processing device that acquires data requested from the data requester device 230 via the network 240 from the data provider device 220 via the network 240 and provides the data requester device 230 via the network 240. The server device 210 includes a database 211 and a providing unit 212.
 データベース211は、データ提供者装置220からデータを取得するためのインターフェースの情報を記憶するように構成されている。データベース211は、例えば図1のデータカタログ123と同様に構成することができるが、それに限定されない。 The database 211 is configured to store interface information for acquiring data from the data provider device 220. The database 211 can be configured in the same manner as the data catalog 123 of FIG. 1, for example, but is not limited thereto.
 提供部212は、データ要求者装置230からデータの取得を要求する第1のリクエストを受け付けると、データベース211に記憶されたインターフェースの情報に基づいて作成した第2のリクエストによってデータ提供者装置220からデータを取得し、データ要求者装置230へ送出するように構成されている。提供部212は、例えば図1の提供部133と同様に構成することができるが、それに限定されない。 Upon receiving the first request for obtaining data from the data requester device 230, the providing unit 212 receives the first request from the data provider device 220 by using the second request created based on the interface information stored in the database 211. Data is acquired and sent to the data requester device 230. The providing unit 212 can be configured, for example, in the same manner as the providing unit 133 in FIG. 1, but is not limited thereto.
 以上のように構成された本実施形態に係る情報処理システム200は、以下のように動作する。すなわち、データ要求者装置230は、データの取得を行う場合、データの取得を要求する第1のリクエストをサーバ装置210に出す。サーバ装置210の提供部212は、第1のリクエストを受け付けると、データベース211に記憶されたインターフェースの情報に基づいて第2のリクエストを作成する。次に提供部212は、作成した第2のリクエストをデータ提供者装置220に出す。データ提供者装置220は、第2のリクエストを受け付けると、要求されたデータをサーバ装置210に送出する。サーバ装置210の提供部212は、データ提供者装置220からデータを取得し、データ要求者装置230へ送出する。 The information processing system 200 according to this embodiment configured as described above operates as follows. That is, when data acquisition is performed, the data requester device 230 issues a first request for data acquisition to the server device 210. When receiving the first request, the provision unit 212 of the server device 210 creates a second request based on the interface information stored in the database 211. Next, the providing unit 212 issues the created second request to the data provider device 220. When receiving the second request, the data provider device 220 sends the requested data to the server device 210. The providing unit 212 of the server device 210 acquires data from the data provider device 220 and sends it to the data requester device 230.
 本実施形態によれば、サーバ装置のコストを下げることができる。その理由は、サーバ装置210は、データ要求者装置230からデータの取得が要求されると、該当するデータを保有するデータ提供者装置220からデータを取得してデータ要求者装置230へ提供するように構成されているため、データ提供者装置220から取得したデータを事前に保持しておく大容量なデータベースを必要としないためである。 According to this embodiment, the cost of the server device can be reduced. The reason is that when the data requester device 230 is requested to acquire data, the server device 210 acquires data from the data provider device 220 that holds the corresponding data and provides the data requester device 230 with the data. This is because a large-capacity database that holds data acquired from the data provider device 220 in advance is not required.
 データ要求者の負荷を軽減することができる。その理由は、データ要求者装置230からデータの取得を要求する者は、取得したいデータを保有するデータ提供者装置220へ個別にリクエストを出す必要がなく、サーバ装置210に対してリクエストを出せばよいためである。 ・ ・ ・ The load on the data requester can be reduced. The reason is that a person who requests acquisition of data from the data requester device 230 does not need to individually make a request to the data provider device 220 that holds the data to be acquired. Because it is good.
 以上、上記各実施形態を参照して本発明を説明したが、本発明は、上述した実施形態に限定されるものではない。本発明の構成や詳細には、本発明の範囲内で当業者が理解しうる様々な変更をすることができる。 Although the present invention has been described with reference to the above embodiments, the present invention is not limited to the above-described embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
 なお、本発明は、日本国にて2018年4月27日に特許出願された特願2018-086145の特許出願に基づく優先権主張の利益を享受するものであり、当該特許出願に記載された内容は、全て本明細書に含まれるものとする。 The present invention enjoys the benefit of priority claim based on the patent application of Japanese Patent Application No. 2018-086145 filed on April 27, 2018 in Japan, and is described in the patent application. The contents are all included in this specification.
 本発明は、文書などの公開データをオープンイノベーション等に活用するための情報処理システム全般に利用できる。 The present invention can be used in general information processing systems for utilizing public data such as documents for open innovation.
 上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
[付記1]
 データ提供者装置とデータ要求者装置とにネットワークを通じて接続されたサーバ装置であって、
 前記データ提供者装置からデータを取得するためのインターフェースの情報を記憶するデータベースと、
 前記データ要求者装置から前記データの取得を要求する第1のリクエストを受け付けると、前記データベースに記憶された前記インターフェースの情報に基づいて作成した第2のリクエストによって前記データ提供者装置から前記データを取得し、前記データ要求者装置へ送出する提供部と、を備える
サーバ装置。
[付記2]
 前記データベースは、前記インターフェースの情報と前記データの識別情報とを関連付けて記憶する
付記1に記載のサーバ装置。
[付記3]
 前記第1のリクエストは、前記データの識別情報を含む
付記1または2に記載のサーバ装置。
[付記4]
 前記インターフェースの情報は、前記第2のリクエストに必要なリクエストパラメータ名を含む
付記1乃至3の何れかに記載のサーバ装置。
[付記5]
 前記提供部は、前記第1のリクエストから抽出したリクエストパラメータの値を前記第2のリクエストに設定する
付記1乃至4の何れかに記載のサーバ装置。
[付記6]
 前記データベースは、同一の前記データの識別情報に関連付けて互いに相違する複数の前記インターフェースの情報を記憶する
付記1乃至5の何れかに記載のサーバ装置。
[付記7]
 前記提供部は、前記第1のリクエストから抽出した前記データの識別情報に対応する複数の前記インターフェースの情報に基づいて複数の前記第2のリクエストを作成する
付記1乃至6の何れかに記載のサーバ装置。
[付記8]
 前記提供部は、前記第1のリクエストから抽出した前記データの識別情報に対応する複数の前記インターフェースの情報に基づいて作成した複数の前記第2のリクエストによって複数の前記データ提供者装置から複数の前記データを取得し、前記データ要求者装置へ送出する
付記1乃至7の何れかに記載のサーバ装置。
[付記9]
 前記提供部は、前記第1のリクエストから抽出した前記データの識別情報に対応する複数の前記インターフェースの情報に基づいて作成した複数の前記第2のリクエストによって複数の前記データ提供者装置から複数の前記データを取得し、前記第1のリクエストに対するレスポンスによって前記データ要求者装置へ送出する
付記1乃至8の何れかに記載のサーバ装置。
[付記10]
 前記インターフェースの情報は、時間的な制約条件を含む
付記1乃至9の何れかに記載のサーバ装置。
[付記11]
 前記提供部は、前記第2のリクエストによって前記データ提供者装置から前記データを取得するタイミングを制御する
付記1乃至10の何れかに記載のサーバ装置。
[付記12]
 前記インターフェースは、APIである
付記1乃至10の何れかに記載のサーバ装置。
[付記13]
 データ提供者装置とデータ要求者装置とにネットワークを通じて接続され、前記データ提供者装置からデータを取得するためのインターフェースの情報を記憶するデータベースを有するサーバ装置が実行する方法であって、
 前記データ要求者装置から前記データの取得を要求する第1のリクエストを受け付けると、前記データベースに記憶された前記インターフェースの情報に基づいて作成した第2のリクエストによって前記データ提供者装置から前記データを取得し、前記データ要求者装置へ送出する
方法。
[付記14]
 データ提供者装置とデータ要求者装置とにネットワークを通じて接続され、前記データ提供者装置からデータを取得するためのインターフェースの情報を記憶するデータベースを有するコンピュータに、
 前記データ要求者装置から前記データの取得を要求する第1のリクエストを受け付けると、前記データベースに記憶された前記インターフェースの情報に基づいて作成した第2のリクエストによって前記データ提供者装置から前記データを取得し、前記データ要求者装置へ送出する処理を行わせるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
[付記15]
 付記1乃至12の何れか1項に記載のサーバ装置と、前記サーバ装置にネットワークを通じて接続されたデータ提供者装置およびデータ要求者装置とから構成された情報処理システム。
A part or all of the above embodiments can be described as in the following supplementary notes, but is not limited thereto.
[Appendix 1]
A server device connected to a data provider device and a data requester device through a network,
A database for storing interface information for acquiring data from the data provider device;
When a first request for obtaining the data is received from the data requester device, the data is obtained from the data provider device by a second request created based on the interface information stored in the database. And a providing unit that obtains and sends the data to the data requester device.
[Appendix 2]
The server apparatus according to appendix 1, wherein the database stores the interface information and the identification information of the data in association with each other.
[Appendix 3]
The server device according to attachment 1 or 2, wherein the first request includes identification information of the data.
[Appendix 4]
The server apparatus according to any one of appendices 1 to 3, wherein the interface information includes a request parameter name necessary for the second request.
[Appendix 5]
The server device according to any one of appendices 1 to 4, wherein the providing unit sets a value of a request parameter extracted from the first request in the second request.
[Appendix 6]
The server apparatus according to any one of appendices 1 to 5, wherein the database stores information of a plurality of the interfaces that are different from each other in association with identification information of the same data.
[Appendix 7]
The providing unit according to any one of appendices 1 to 6, wherein the providing unit creates a plurality of second requests based on information of the plurality of interfaces corresponding to identification information of the data extracted from the first request. Server device.
[Appendix 8]
The providing unit includes a plurality of second data requests from a plurality of the data provider devices by a plurality of the second requests created based on information of the plurality of interfaces corresponding to the identification information of the data extracted from the first request. The server device according to any one of appendices 1 to 7, which acquires the data and sends the data to the data requester device.
[Appendix 9]
The providing unit includes a plurality of second data requests from a plurality of the data provider devices by a plurality of the second requests created based on information of the plurality of interfaces corresponding to the identification information of the data extracted from the first request. The server device according to any one of appendices 1 to 8, wherein the server device acquires the data and sends the data to the data requester device in response to the first request.
[Appendix 10]
10. The server device according to any one of appendices 1 to 9, wherein the interface information includes a temporal restriction condition.
[Appendix 11]
The server device according to any one of supplementary notes 1 to 10, wherein the providing unit controls a timing of acquiring the data from the data provider device according to the second request.
[Appendix 12]
The server device according to any one of appendices 1 to 10, wherein the interface is an API.
[Appendix 13]
A method executed by a server device connected to a data provider device and a data requester device through a network and having a database for storing interface information for acquiring data from the data provider device,
When a first request for obtaining the data is received from the data requester device, the data is obtained from the data provider device by a second request created based on the interface information stored in the database. A method of acquiring and sending to the data requester device.
[Appendix 14]
A computer connected to a data provider device and a data requester device through a network and having a database for storing interface information for acquiring data from the data provider device.
When a first request for obtaining the data is received from the data requester device, the data is obtained from the data provider device by a second request created based on the interface information stored in the database. A computer-readable recording medium having recorded thereon a program for performing processing to obtain and send to the data requester apparatus.
[Appendix 15]
13. An information processing system comprising the server device according to any one of appendices 1 to 12, and a data provider device and a data requester device connected to the server device through a network.
100…サーバ装置
111…通信インターフェース部
112…操作入力部
113…画面表示部
120…記憶部
121…プログラム
122…データアクセスAPIの情報
123…データカタログ
130…演算処理部
131…登録部
132…検索部
133…提供部
140-1~140-m…データ提供者装置
150-1~150-n…データ要求者装置
200…情報処理システム
210…サーバ装置
211…データベース
212…提供部
220…データ提供者装置
230…データ要求者装置
240…ネットワーク
DESCRIPTION OF SYMBOLS 100 ... Server apparatus 111 ... Communication interface part 112 ... Operation input part 113 ... Screen display part 120 ... Storage part 121 ... Program 122 ... Data access API information 123 ... Data catalog 130 ... Arithmetic processing part 131 ... Registration part 132 ... Search part 133 ... providing units 140-1 to 140-m ... data provider devices 150-1 to 150-n ... data requester device 200 ... information processing system 210 ... server device 211 ... database 212 ... providing unit 220 ... data provider device 230: Data requester device 240: Network

Claims (15)

  1.  データ提供者装置とデータ要求者装置とにネットワークを通じて接続されたサーバ装置であって、
     前記データ提供者装置からデータを取得するためのインターフェースの情報を記憶するデータベースと、
     前記データ要求者装置から前記データの取得を要求する第1のリクエストを受け付けると、前記データベースに記憶された前記インターフェースの情報に基づいて作成した第2のリクエストによって前記データ提供者装置から前記データを取得し、前記データ要求者装置へ送出する提供部と、を備える
    サーバ装置。
    A server device connected to a data provider device and a data requester device through a network,
    A database for storing interface information for acquiring data from the data provider device;
    When a first request for obtaining the data is received from the data requester device, the data is obtained from the data provider device by a second request created based on the interface information stored in the database. And a providing unit that obtains and sends the data to the data requester device.
  2.  前記データベースは、前記インターフェースの情報と前記データの識別情報とを関連付けて記憶する
    請求項1に記載のサーバ装置。
    The server apparatus according to claim 1, wherein the database stores the interface information and the data identification information in association with each other.
  3.  前記第1のリクエストは、前記データの識別情報を含む
    請求項1または2に記載のサーバ装置。
    The server device according to claim 1, wherein the first request includes identification information of the data.
  4.  前記インターフェースの情報は、前記第2のリクエストに必要なリクエストパラメータ名を含む
    請求項1乃至3の何れかに記載のサーバ装置。
    The server apparatus according to claim 1, wherein the interface information includes a request parameter name necessary for the second request.
  5.  前記提供部は、前記第1のリクエストから抽出したリクエストパラメータの値を前記第2のリクエストに設定する
    請求項1乃至4の何れかに記載のサーバ装置。
    The server device according to claim 1, wherein the providing unit sets a value of a request parameter extracted from the first request in the second request.
  6.  前記データベースは、同一の前記データの識別情報に関連付けて互いに相違する複数の前記インターフェースの情報を記憶する
    請求項1乃至5の何れかに記載のサーバ装置。
    The server apparatus according to claim 1, wherein the database stores information on a plurality of the interfaces different from each other in association with identification information of the same data.
  7.  前記提供部は、前記第1のリクエストから抽出した前記データの識別情報に対応する複数の前記インターフェースの情報に基づいて複数の前記第2のリクエストを作成する
    請求項1乃至6の何れかに記載のサーバ装置。
    The said provision part produces the said several 2nd request based on the information of the said some interface corresponding to the identification information of the said data extracted from the said 1st request. Server device.
  8.  前記提供部は、前記第1のリクエストから抽出した前記データの識別情報に対応する複数の前記インターフェースの情報に基づいて作成した複数の前記第2のリクエストによって複数の前記データ提供者装置から複数の前記データを取得し、前記データ要求者装置へ送出する
    請求項1乃至7の何れかに記載のサーバ装置。
    The providing unit includes a plurality of second data requests from a plurality of the data provider devices by a plurality of the second requests created based on information of the plurality of interfaces corresponding to the identification information of the data extracted from the first request. The server device according to claim 1, wherein the data is acquired and transmitted to the data requester device.
  9.  前記提供部は、前記第1のリクエストから抽出した前記データの識別情報に対応する複数の前記インターフェースの情報に基づいて作成した複数の前記第2のリクエストによって複数の前記データ提供者装置から複数の前記データを取得し、前記第1のリクエストに対するレスポンスによって前記データ要求者装置へ送出する
    請求項1乃至8の何れかに記載のサーバ装置。
    The providing unit includes a plurality of second data requests from a plurality of the data provider devices by a plurality of the second requests created based on information of the plurality of interfaces corresponding to the identification information of the data extracted from the first request. The server device according to claim 1, wherein the server device acquires the data and sends the data to the data requester device according to a response to the first request.
  10.  前記インターフェースの情報は、時間的な制約条件を含む
    請求項1乃至9の何れかに記載のサーバ装置。
    The server device according to claim 1, wherein the interface information includes a temporal restriction condition.
  11.  前記提供部は、前記第2のリクエストによって前記データ提供者装置から前記データを取得するタイミングを制御する
    請求項1乃至10の何れかに記載のサーバ装置。
    The server device according to any one of claims 1 to 10, wherein the providing unit controls a timing of acquiring the data from the data provider device according to the second request.
  12.  前記インターフェースは、APIである
    請求項1乃至10の何れかに記載のサーバ装置。
    The server device according to claim 1, wherein the interface is an API.
  13.  データ提供者装置とデータ要求者装置とにネットワークを通じて接続され、前記データ提供者装置からデータを取得するためのインターフェースの情報を記憶するデータベースを有するサーバ装置が実行する方法であって、
     前記データ要求者装置から前記データの取得を要求する第1のリクエストを受け付けると、前記データベースに記憶された前記インターフェースの情報に基づいて作成した第2のリクエストによって前記データ提供者装置から前記データを取得し、前記データ要求者装置へ送出する
    方法。
    A method executed by a server device connected to a data provider device and a data requester device through a network and having a database for storing interface information for acquiring data from the data provider device,
    When a first request for obtaining the data is received from the data requester device, the data is obtained from the data provider device by a second request created based on the interface information stored in the database. A method of acquiring and sending to the data requester device.
  14.  データ提供者装置とデータ要求者装置とにネットワークを通じて接続され、前記データ提供者装置からデータを取得するためのインターフェースの情報を記憶するデータベースを有するコンピュータに、
     前記データ要求者装置から前記データの取得を要求する第1のリクエストを受け付けると、前記データベースに記憶された前記インターフェースの情報に基づいて作成した第2のリクエストによって前記データ提供者装置から前記データを取得し、前記データ要求者装置へ送出する処理を行わせるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
    A computer connected to a data provider device and a data requester device through a network and having a database for storing interface information for acquiring data from the data provider device.
    When a first request for obtaining the data is received from the data requester device, the data is obtained from the data provider device by a second request created based on the interface information stored in the database. A computer-readable recording medium having recorded thereon a program for performing processing to obtain and send to the data requester apparatus.
  15.  請求項1乃至12の何れか1項に記載のサーバ装置と、前記サーバ装置にネットワークを通じて接続されたデータ提供者装置およびデータ要求者装置とから構成された情報処理システム。 An information processing system comprising the server device according to any one of claims 1 to 12, and a data provider device and a data requester device connected to the server device through a network.
PCT/JP2019/015520 2018-04-27 2019-04-09 Server device WO2019208211A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020516194A JPWO2019208211A1 (en) 2018-04-27 2019-04-09 Server device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018086145 2018-04-27
JP2018-086145 2018-04-27

Publications (1)

Publication Number Publication Date
WO2019208211A1 true WO2019208211A1 (en) 2019-10-31

Family

ID=68294514

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/015520 WO2019208211A1 (en) 2018-04-27 2019-04-09 Server device

Country Status (2)

Country Link
JP (1) JPWO2019208211A1 (en)
WO (1) WO2019208211A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009037501A (en) * 2007-08-03 2009-02-19 Nippon Telegr & Teleph Corp <Ntt> Information retrieval apparatus, information retrieval method and program
JP2014102677A (en) * 2012-11-20 2014-06-05 Oki Electric Ind Co Ltd Information processing server, information processing method, and program

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009037501A (en) * 2007-08-03 2009-02-19 Nippon Telegr & Teleph Corp <Ntt> Information retrieval apparatus, information retrieval method and program
JP2014102677A (en) * 2012-11-20 2014-06-05 Oki Electric Ind Co Ltd Information processing server, information processing method, and program

Also Published As

Publication number Publication date
JPWO2019208211A1 (en) 2021-04-30

Similar Documents

Publication Publication Date Title
AU2017203794B2 (en) Workforce strategy insights
CN106971009B (en) Voice database generation method and device, storage medium and electronic equipment
US20150379087A1 (en) Apparatus and method for replying to query
US20080134038A1 (en) Interactive information providing service method and apparatus
US11699030B1 (en) Systems and methods for a knowledge-based form creation platform
CN104463423A (en) Formative video resume collection method and system
CN102915493A (en) Information processing apparatus and method
KR102104294B1 (en) Sign language video chatbot application stored on computer-readable storage media
CN102855317A (en) Multimode indexing method and system based on demonstration video
KR20210090576A (en) A method, an apparatus, an electronic device, a storage medium and a program for controlling quality
CN116762078A (en) Entity resolution for chat robot sessions
CN111223487B (en) Information processing method and electronic equipment
US20130339013A1 (en) Processing apparatus, processing system, and output method
CN111126422B (en) Method, device, equipment and medium for establishing industry model and determining industry
CN112182255A (en) Method and apparatus for storing media files and for retrieving media files
US20220276067A1 (en) Method and apparatus for guiding voice-packet recording function, device and computer storage medium
WO2019208211A1 (en) Server device
US11991415B2 (en) Methods and systems for counseling a user with respect to supervised content
CN110659208A (en) Test data set updating method and device
CN110489412A (en) A kind of method, apparatus of data processing, medium and electronic equipment
CN109840072A (en) Information processing method and device
KR102492008B1 (en) Apparatus for managing minutes and method thereof
CN111597441B (en) Information processing method and device and electronic equipment
JP2018101249A (en) Robot, robot system, server, information collection method, and program
JP2012252484A (en) Reply automatic creation system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19793367

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020516194

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19793367

Country of ref document: EP

Kind code of ref document: A1