WO2010082538A1 - 複数のアプリケーション間でのデータ連携を支援する装置、方法及びコンピュータプログラム - Google Patents

複数のアプリケーション間でのデータ連携を支援する装置、方法及びコンピュータプログラム Download PDF

Info

Publication number
WO2010082538A1
WO2010082538A1 PCT/JP2010/050159 JP2010050159W WO2010082538A1 WO 2010082538 A1 WO2010082538 A1 WO 2010082538A1 JP 2010050159 W JP2010050159 W JP 2010050159W WO 2010082538 A1 WO2010082538 A1 WO 2010082538A1
Authority
WO
WIPO (PCT)
Prior art keywords
meta information
application
given
cooperation
linked
Prior art date
Application number
PCT/JP2010/050159
Other languages
English (en)
French (fr)
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 JP2010546615A priority Critical patent/JP5278918B2/ja
Priority to CN201080003886.5A priority patent/CN102272727B/zh
Priority to EP10731207A priority patent/EP2381364A4/en
Publication of WO2010082538A1 publication Critical patent/WO2010082538A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt

Definitions

  • the present invention relates to an apparatus, a method, and a computer program that support data linkage among a plurality of applications that can flexibly link a plurality of applications without impairing the degree of freedom of application design.
  • Patent Document 1 a clipboard is used to realize data sharing between applications, and a data format that can be linked between applications is registered in advance, thereby matching the registered data format.
  • a data linkage apparatus that enables data linkage only between applications that transmit and receive data to which data is attached. This makes it possible to link applications that send and receive data that has at least one data that matches the registered data format, and automatically links applications without any explicit operation. Can do.
  • Patent Document 2 discloses a service connection information generation system that generates a connection scenario for connecting element services and connects element services according to the semantic ontology of entities corresponding to input / output metadata. Thereby, even when the names of entities are different, element services can be linked if the semantic ontology is the same or similar.
  • the present invention has been made in view of such circumstances, and an apparatus for supporting data linkage between a plurality of applications capable of flexibly linking a plurality of applications without impairing the degree of freedom in application design. It is an object to provide a method and a computer program.
  • the device for supporting data linkage provides the meta information and / or the link destination application of the linkage source application when the application is linked.
  • the meta information storage means for storing the meta information given to the input parameter
  • the cooperation judgment means for judging whether or not the cooperation destination application cooperates with another application
  • the cooperation judgment means If it is determined, meta information determination means for determining whether meta information is given only to one of the output parameter of the other application or the input parameter of the cooperation destination application, and the meta information determination means If it is judged that only the granted meta information is granted Meta information providing means to be provided as the other meta information, meta information provided as the other meta information by the meta information providing means, an output parameter of the cooperation source application, or an input parameter of the cooperation destination application Determination means for determining whether or not the meta information assigned to the name matches, and a linkage means for linking applications determined to match by the determination means.
  • an apparatus for supporting data linkage according to the second invention comprises weighting means for assigning a weighting coefficient to the meta information given by the meta information giving means.
  • the weighting coefficient is set to be smaller as it is indirectly estimated and given meta information.
  • an apparatus for supporting data linkage In the second or third aspect of the invention, the priority setting means for setting the priority for assigning meta information based on the weighting coefficient, Candidate application display that displays a list of linkage destination applications that can be linked and the linkage destination applications that can be linked when the designation of the linkage source application is accepted by the linkage designation acceptance unit. Means.
  • the priority setting means weights the meta information given to the output parameter of the linkage source application.
  • the coefficient and the weighting coefficient of the meta information given to the input parameter of the application at the cooperation destination are added, and the priority is set higher in descending order of the added value.
  • the method for supporting data linkage is the case where, when an application is linked to data, the meta information and / or linked destination given to the output parameter of the linkage source application.
  • a computer program according to a seventh aspect of the present invention is a computer program that can be executed by a computer that supports data linkage among a plurality of applications.
  • the meta information storage means for storing the meta information given to the output parameter of the cooperation source application and / or the meta information given to the input parameter of the cooperation destination application, the cooperation destination application is another application. If the link determination unit determines whether the link determination unit is linked, the meta information is only included in one of the output parameter of the other application or the input parameter of the link destination application. Is granted Meta information determination means for determining whether or not the meta information determination means assigns one meta information that is given as the other meta information that is not given.
  • the computer program according to an eighth invention causes the computer to function as weighting means for assigning a weighting coefficient to the meta information given by the meta information giving means in the seventh invention.
  • the weighting coefficient is set to be smaller as the meta information is indirectly estimated and given.
  • a computer program according to the eighth or ninth aspect, wherein the computer sets priority order for setting a priority order for assigning meta information based on the weighting coefficient, and specifies application linkage. And a candidate application display means for displaying a list of cooperation destination applications that can be linked in descending order of the set priorities when the designation of the cooperation source application is accepted by the cooperation designation receiving means.
  • the computer program according to an eleventh aspect of the present invention is the computer program according to any one of the eighth to tenth aspects, wherein the priority setting means is linked with a weighting coefficient of meta information given to an output parameter of a cooperation source application. It functions as a means for adding the weighting coefficient of the meta information given to the input parameter of the previous application, and a means for setting the higher priority in order of increasing addition value.
  • the present invention by collating and storing meta information of applications that have been explicitly given by the user or already linked, even if the meta information is not given, cooperation is performed. Therefore, it is possible to estimate and assign meta information for the purpose, and it is possible to reliably perform cooperation (mashup) of applications such as web services.
  • cooperation cooperation
  • weighting the meta information it is possible to prioritize the cooperating applications, to select the cooperating application in order of higher priority, and by automatically giving the meta information, Unexpected propagation of meta information to each application can be prevented in advance.
  • FIG. 1 It is a block diagram which shows the structural example of the data cooperation system containing the apparatus which supports the data cooperation between the some applications which concern on Embodiment 1 of this invention. It is an illustration figure of the data structure of the mashup information storage part which concerns on Embodiment 1 of this invention. It is explanatory drawing of the conventional mashup operation. It is explanatory drawing of the mashup operation using the meta information of the data cooperation system which concerns on Embodiment 1 of this invention. It is an illustration figure of the mashup operation when meta information is not provided to the cooperation destination application. It is a functional block diagram of the data cooperation assistance apparatus which concerns on Embodiment 1 of this invention.
  • the present invention is partially implemented by a computer. It can be implemented as a computer program that can be executed. Therefore, the present invention may take an embodiment as a hardware, an apparatus as a device that supports data linkage among a plurality of applications, an embodiment as software, or an embodiment of a combination of software and hardware. it can.
  • the computer program can be recorded on any computer-readable recording medium such as a hard disk, DVD, CD, optical storage device, magnetic storage device or the like.
  • Meta information for cooperation can be estimated and given, and it becomes possible to reliably perform cooperation (mashup) of applications such as web services.
  • weighting the meta information it is possible to prioritize the cooperating applications, to select the cooperating application in order of higher priority, and by automatically giving the meta information, Unexpected propagation of meta information to each application can be prevented in advance.
  • FIG. 1 is a block diagram showing a configuration example of a data linkage system including a device that supports data linkage between a plurality of applications according to Embodiment 1 of the present invention.
  • a plurality of computers 3, 3,... And the data linkage support apparatus 1 are connected so that data communication can be performed via the network 2.
  • the data cooperation support apparatus 1 connects at least a CPU (Central Processing Unit) 11, a memory 12, a storage device 13, an I / O interface 14, a communication interface 15, a video interface 16, a portable disk drive 17, and the above-described hardware.
  • An internal bus 18 is used.
  • the CPU 11 is connected to the above-described hardware units of the data cooperation support apparatus 1 via the internal bus 18, controls the operation of the above-described hardware units, and stores the computer program stored in the storage device 13. According to 100, various software functions are performed.
  • the memory 12 is composed of a volatile memory such as SRAM or SDRAM, and a load module is expanded when the computer program 100 is executed, and stores temporary data generated when the computer program 100 is executed.
  • the storage device 13 includes a built-in fixed storage device (hard disk), a ROM, and the like.
  • the computer program 100 stored in the storage device 13 is downloaded by a portable disk drive 17 from a portable recording medium 90 such as a DVD or CD-ROM in which information such as programs and data is recorded. To the memory 12 and executed.
  • a computer program downloaded from an external computer connected to the network 2 via the communication interface 15 may be used.
  • the storage device 13 includes a mashup information storage unit (meta information storage unit) 131.
  • the mashup information storage unit 131 receives the meta information given to the input / output parameters of the application linked with data by the external computers 3, 3,...
  • FIG. 2 is an exemplary diagram of a data configuration of the mashup information storage unit 131 according to Embodiment 1 of the present invention.
  • the mashup information storage unit 131 has a cooperation source application ID, which is information for identifying a mashup cooperation source application, an output parameter of the cooperation source application, and an output given to the output parameter.
  • the meta information, the cooperation destination application ID that is information for identifying the mashed-up cooperation destination application, the input parameter of the cooperation destination application, and the input meta information given to the input parameter are stored. Even if the output parameter does not match the input parameter, it can be linked if the output meta information given to the output parameter matches the input meta information given to the input parameter. it can. Further, it is sufficient that the meta information is included in either one.
  • the communication interface 15 is connected to an internal bus 18 and is connected to an external network 2 such as the Internet, LAN, WAN, etc., so that data can be exchanged with external computers 3, 3,. It is possible to send and receive.
  • an external network 2 such as the Internet, LAN, WAN, etc.
  • the I / O interface 14 is connected to a data input medium such as a keyboard 21 and a mouse 22 and receives data input.
  • the video interface 16 is connected to a display device 23 such as a CRT monitor or LCD, and displays a predetermined image.
  • FIG. 3 is an explanatory diagram of a conventional mashup operation.
  • output parameters of the application 31 indicate an address indicating a restaurant address and a restaurant name. name.
  • the input parameter of the application 32 is I.
  • the application designer can freely set the input / output parameters, it is difficult to set common input / output parameters on the assumption that the applications are linked. Therefore, when the application 31 and the application 32 are linked, it is necessary to bind the input parameter I of the application 32 and the output parameter address of the application 31, and the input parameter I of the application 32 matches the output parameter address of the application 31. The user needs to set it explicitly.
  • the output parameters of the application 33 are adr indicating the address corresponding to the zip code and adr_kana which is a kana notation. Therefore, even when the application 33 and the application 32 are linked, it is necessary for the user to explicitly set the input parameter I of the application 32 to match the output parameter adr of the application 33.
  • FIG. 4 is an explanatory diagram of a mashup operation using meta information of the data linkage system according to the first embodiment of the present invention.
  • output parameters of the application 41 indicate an address indicating a restaurant address and a restaurant name. name.
  • the input parameter of the application 42 is I
  • the application 41 and the application 42 are linked, it is necessary to bind the input parameter I of the application 42 and the output parameter address of the application 41 as in FIG. The user needs to explicitly set the input parameter I of the application 42 so that it matches the output parameter address of the application 41.
  • the application 42 can only cooperate with the application 41 as it is, so meta information is added to the input / output parameters of each application.
  • the meta information to be given is not particularly limited as long as it is user-specific meta information such as date, price, address, and latitude.
  • a normalized data type such as address, latitude, longitude, and date may be assigned, or a data format such as yyyy / mm / dd may be assigned.
  • meta information “address” is assigned to the output parameter address of the application 41, and meta information “address” is also assigned to the input parameter I of the application 42. Therefore, even if the output parameter address and the input parameter I are different between the applications 41 and 42 to be linked, the given meta-information “address” matches, so the output parameter of the application 41 The address and the input parameter I of the application 42 can be bound.
  • meta information “address” is also given to the output parameter adr of the application 43 that executes the zip code conversion process, and the output parameter adr and the input parameter I are different between the applications 43 and 42 to be linked.
  • the given meta-information “address” matches, both the output parameter adr of the application 43 and the input parameter I of the application 42 can be bound.
  • FIG. 5 is an exemplary diagram of a mashup operation when meta information is not given to the cooperation destination application.
  • output parameters of the application 41 indicate an address indicating a restaurant address and a restaurant name. name.
  • the input parameter of the application 42 is I
  • the meta information “address” is assigned to the output parameter address of the application 41, whereas the meta information is not assigned to the input parameter I of the application 42. In this case, even if the output parameter address and the input parameter I are different between the applications 41 and 42 to be linked, if the given meta information “address” is the same, the binding may be performed. Since it is possible, when the application 41 and the application 42 are linked, it is estimated that the meta information “address” is given to the input parameter I of the application 42 and stored in the mashup information storage unit 131. To do.
  • the meta information “address” is also given to the output parameter adr of the other application 43, the application 43 to be linked, 42, even if the output parameter adr and the input parameter I are different from each other, the meta information “address” given to the output parameter adr of the application 43 is estimated and stored in the mashup information storage unit 131.
  • the meta information “address” matches, it can be determined that the binding is possible.
  • FIG. 6 is a functional block diagram of the data linkage support apparatus 1 according to Embodiment 1 of the present invention.
  • the cooperation source application designation reception unit (cooperation specification reception means) 601 receives the specification of the application that is the cooperation source. Specifically, designation is accepted from the displayed application list by a click operation with the mouse 22 or the like, a key-in operation with the keyboard 21 or the like.
  • the cooperation destination application specification receiving unit (cooperation specification receiving means) 602 receives the specification of the application that is the cooperation destination. Specifically, designation is accepted from the displayed application list by a click operation with the mouse 22 or the like, a key-in operation with the keyboard 21 or the like.
  • the cooperation determination unit 603 determines whether or not the cooperation destination application that has received the designation is linked to another application. Specifically, the mashup information storage unit 131 is inquired to determine whether there is an already linked application.
  • meta information determining unit 604 determines that the cooperation determining unit 603 is cooperating with another application, one of the output parameters of the cooperating other application or the input parameter of the cooperating application that has received the designation. It is determined whether or not meta information is given only to. Whether or not meta information is given can be determined by whether or not the meta information is stored in the mashup information storage unit 131.
  • the meta information determination unit 605 adds one of the allocated meta information to each parameter as the other meta information that is not allocated. .
  • the meta information is given only to the output parameters of other linked applications, the meta information is given to the input parameters of the linked application that accepted the designation, and the designation is accepted.
  • the meta information is given only to the input parameter of the cooperation destination application, the meta information is given to the output parameter of the other application that is linked.
  • the determining unit 606 determines whether or not the meta information given by the meta information giving unit 605 matches the meta information given to the output parameter of the cooperation source application or the input parameter of the cooperation destination application. When the determination unit 606 determines that the two pieces of meta information match, the cooperation unit 607 links the two applications.
  • FIG. 7 is a flowchart showing the procedure of the data cooperation support process of the CPU 11 of the data cooperation support apparatus 1 according to the first embodiment of the present invention.
  • the CPU 11 of the data cooperation support apparatus 1 accepts designation of an application as a cooperation source and an application as a cooperation destination (step S701). Specifically, designation is accepted from the displayed application list by a click operation with the mouse 22 or the like, a key-in operation with the keyboard 21 or the like.
  • the CPU 11 determines whether or not the cooperation destination application that has received the designation is linked to another application (step S702). Specifically, the mashup information storage unit 131 is inquired to determine whether there is an already linked application.
  • step S702 When the CPU 11 determines that it is linked with another application (step S702: YES), the CPU 11 is one of the output parameter of the linked other application or the input parameter of the linked destination application that has received the designation. It is determined whether or not meta information is assigned only to (step S703). Whether or not meta information is given can be determined by whether or not the meta information is stored in the mashup information storage unit 131.
  • Step S703 When the CPU 11 determines that the meta information is given to only one (step S703: YES), the CPU 11 gives the meta information given to one parameter to the other parameter not given (Ste S704). For example, if meta information is given only to the output parameters of other linked applications, the meta information is given to the input parameters of the linked application that accepted the designation, and the designation is accepted. When the meta information is given only to the input parameter of the cooperation destination application, the meta information is given to the output parameter of the other application that is linked.
  • step S702 determines that it is not linked with another application
  • step S703: NO determines that meta information is given to both
  • step S703: NO determines whether or not the output parameter meta information of the linked application matches the input parameter meta information. If the CPU 11 determines that they do not match (step S705: NO), the CPU 11 returns the process to step S701 so that the application to be linked is designated again, and repeats the above-described process.
  • step S705: YES the CPU 11 cooperates both the applications (step S706) to enable execution as a new application.
  • the mashup information storage unit 131 by collecting and storing in the mashup information storage unit 131 meta information of applications that have been explicitly given by the user or that have already been linked. Even if meta information is not assigned to the input / output parameters of the linked application, it is possible to estimate and assign the meta information for linking, and ensure the linkage (mashup) of applications such as web services. Can be performed.
  • FIG. 8 is an exemplary diagram of a data configuration of the mashup information storage unit 131 according to Embodiment 2 of the present invention.
  • the mashup information storage unit 131 stores a collaboration source application ID that is information for identifying a mashup-sourced collaboration source application, an output parameter of the collaboration source application, and an output meta attached to the output parameter.
  • Information, weighting coefficient of output meta information, and cooperation destination application ID that is information for identifying the mashed-up cooperation destination application, input parameter of the cooperation destination application, input meta information given to the input parameter, and input meta information are stored.
  • a plurality of meta information can be stored for input / output parameters, and a weighting coefficient can be stored for each meta information.
  • the weighting coefficient is set to 1/1 when meta information is explicitly specified, for example, when the specification of the meta information is directly accepted, and 1 when using the meta information given to the application partner parameter. / 2 and 1/4 when the meta information is estimated based on other linkage information.
  • the method of determining the weighting coefficient is not limited to this, and any method may be used as long as the priority order used as the meta information can be determined.
  • FIG. 9 is an explanatory diagram of a mashup operation using meta information.
  • the output parameter of the application 91 indicates the author name. It is name indicating author and literature name. Meta information “person” is assigned to the output parameter author.
  • the input parameter of the application 92 is “keyword”, and since Wikipedia, which is a general-purpose dictionary, is used, of course, meta information is not given. Therefore, when the application 91 and the application 92 are linked, the meta information “person” is automatically given to the input parameter keyword of the application 92.
  • FIG. 10 is an explanatory diagram of a mashup operation when a weighting coefficient is added.
  • the output parameter of the application 91 indicates the author name. It is name indicating author and literature name. Meta information “person” is assigned to the output parameter author. Since the meta information is explicitly given, a weighting coefficient (1/1) is added to the meta information “person” given to the output parameter author.
  • the input parameter of the application 92 is “keyword”, and since Wikipedia, which is a general-purpose dictionary, is used, of course, meta information is not given. Therefore, when the application 91 and the application 92 are linked, the meta information “person” is automatically given to the input parameter keyword of the application 92. Since meta information is given to only one of the linked applications, a weighting coefficient (1/2) is added to the meta information “person” given to the input parameter keyword.
  • weighting coefficient of the meta information to be given is added for each output parameter and input parameter, when a plurality of output parameters and / or input parameters are stored, a combination having a high priority, that is, weighting.
  • FIG. 11 is a schematic diagram showing information stored in the mashup information storage unit 131 as information related to existing application cooperation.
  • an application 111 that executes a document search process, an application 112 that executes a used car search process, and an application 113 that executes a hot spring search process each perform a search process using Wikipedia, which is a general-purpose dictionary. It is linked with the application 114 to be executed.
  • meta information “person”, “keyword”, and “product” are added to the output parameter author, and weighting factors (1/1), (1/2), and (1/4) are added respectively. Has been.
  • meta information “product”, “keyword”, and “person” are assigned to the output parameter model, and the weighting coefficients (1/1), (1/2), and (1/4), respectively. ) Has been added.
  • meta information “keyword”, “person”, and “product” are assigned to the output parameter k ⁇ nou, and weighting coefficients (1/2), (1/4), and (1/4) are added respectively. Has been.
  • the application 114 that is the cooperation destination has meta information “keyword”, “person”, and “product” added to the input parameter keyword, and weighting coefficients (1/1), (1/2), ( 1/2) has been added.
  • FIG. 12 is a schematic diagram showing an example of assigning priorities of other applications to the application linkage of FIG.
  • FIG. 12A shows an application 121 that is an API for executing web search, and meta information “keyword” is added to the input parameter keyword and a weighting coefficient (1/1) is added.
  • the weighting coefficient of the meta information “keyword” is (1 ⁇ 2) for all of the applications 111, 112, and 113, the applications 111, 112, and 113 cannot be prioritized as candidates for the cooperation source application. I understand.
  • FIG. 12B shows an application 122 that is an API for executing a person search.
  • Meta information “person” and “keyword” are given to the input parameter who, and weighting coefficients (1/1) are respectively provided. , (1/1) are added.
  • the weighting coefficient (1/1) added to the application 111 is the largest
  • the weighting coefficient is set for each of the applications 111, 112, and 113. (1/2) is added. Therefore, for the meta information “person”, since the weighting coefficient added to the application 111 is the largest (1/1), the cooperation with the application 111 is the first candidate.
  • weighting coefficient of the meta information to be given is added for each output parameter and input parameter, when a plurality of output parameters and / or input parameters are stored, a combination having a high priority, that is, weighting.
  • FIG. 13 is a functional block diagram of the data linkage support apparatus 1 according to Embodiment 2 of the present invention.
  • the cooperation source application designation reception unit (cooperation specification reception means) 601 receives the specification of the application that is the cooperation source. Specifically, designation is accepted from the displayed application list by a click operation with the mouse 22 or the like, a key-in operation with the keyboard 21 or the like.
  • the cooperation destination application designation accepting unit (accepting means on the cooperation instruction) 602 accepts designation of an application as a cooperation destination. Specifically, designation is accepted from the displayed application list by a click operation with the mouse 22 or the like, a key-in operation with the keyboard 21 or the like.
  • the cooperation determination unit 603 determines whether or not the cooperation destination application that has received the designation is linked to another application. Specifically, the mashup information storage unit 131 is inquired to determine whether there is an already linked application.
  • meta information determining unit 604 determines that the cooperation determining unit 603 is cooperating with another application, one of the output parameters of the cooperating other application or the input parameter of the cooperating application that has received the designation. It is determined whether or not meta information is given only to. Whether or not meta information is given can be determined by whether or not the meta information is stored in the mashup information storage unit 131.
  • the meta information determination unit 605 adds the one meta information that is allocated to each parameter as the other meta information that is not allocated. .
  • the meta information is given only to the output parameters of other linked applications, the meta information is given to the input parameters of the linked application that accepted the designation, and the designation is accepted.
  • the meta information is given only to the input parameter of the cooperation destination application, the meta information is given to the output parameter of the other application that is linked.
  • the weighting unit 1101 adds a weighting coefficient for each meta information given to the input / output parameter, and stores it in the mashup information storage unit 131. It is preferable that the weighting coefficient to be added has a smaller value as the meta information is indirectly estimated and given.
  • the weighting coefficient to be added has a smaller value as the meta information is indirectly estimated and given.
  • the priority order setting unit 1102 sets the priority order for adding meta information based on the weighting coefficient added by the weighting unit 1101.
  • an added value obtained by adding the added weighting coefficients is calculated, and a higher priority is assigned in descending order of the added value.
  • the weighting coefficient of the meta information of the output parameter of the cooperation source application is 1/1 and the weighting coefficient of the meta information of the input parameter of the cooperation destination application is 1/4
  • the addition value 5/4 is calculated.
  • the weighting coefficient of the meta information of the output parameter of the other cooperation source application is 1 ⁇ 2
  • the addition value 3/4 is calculated. Therefore, since the former addition value is larger, it can be determined that the priority is higher, and the meta information of the output parameter of the cooperation source application can be given as the former meta information.
  • the determining unit 606 determines whether or not the meta information given by the meta information giving unit 605 matches the meta information given to the output parameter of the cooperation source application or the input parameter of the cooperation destination application. When the determination unit 606 determines that the two pieces of meta information match, the cooperation unit 607 links the two applications.
  • a candidate application display unit 1103 may be provided to display a list of applications including candidate meta information. Thereby, erroneous cooperation can be prevented in advance, and a cooperative application can be selected while visually confirming.
  • FIG. 14 is a flowchart showing the procedure of the data linkage support process of the CPU 11 of the data linkage support apparatus 1 according to Embodiment 2 of the present invention.
  • the CPU 11 of the data cooperation support apparatus 1 accepts designation of an application as a cooperation source and an application as a cooperation destination (step S1401). Specifically, designation is accepted from the displayed application list by a click operation with the mouse 22 or the like, a key-in operation with the keyboard 21 or the like.
  • the CPU 11 determines whether or not the cooperation destination application that has received the designation is linked to another application (step S1402). Specifically, the mashup information storage unit 131 is inquired to determine whether there is an already linked application.
  • step S1402 When the CPU 11 determines that it is linked with another application (step S1402: YES), the CPU 11 is one of the output parameter of the linked other application or the input parameter of the linked destination application that has received the designation. It is determined whether or not meta information is assigned only to (step S1403). Whether or not meta information is given can be determined by whether or not the meta information is stored in the mashup information storage unit 131.
  • the CPU 11 determines that the meta information is given to only one (step S1403: YES)
  • the CPU 11 gives the meta information given to one parameter to the other parameter not given (Ste S1404). For example, if meta information is given only to the output parameters of other linked applications, the meta information is given to the input parameters of the linked application that accepted the designation, and the designation is accepted.
  • the meta information is given only to the input parameter of the cooperation destination application, the meta information is given to the output parameter of the other application that is linked.
  • step S1402 determines that it is not linked with another application (step S1402: NO), and when it is determined that meta information is given to both (step S1403: NO), the CPU 11 skips step S1404.
  • the weighting coefficient is added for each piece of meta information according to the situation where the meta information is given (step S1405).
  • the CPU 11 sets priorities for all combinations of meta information stored in the mashup information storage unit 131 between the cooperation source application and the cooperation destination application that have received the designation. (Step S1406).
  • priorities are set in descending order of the added value obtained by adding the weighting coefficient added to the meta information.
  • step S1407 judges whether the combination of the given meta information is the combination with the highest set priority based on the set priority.
  • step S1407: NO the CPU 11 changes to the combination of meta information having the highest priority (step S1408) and stores it in the mashup information storage unit 131. To do.
  • step S1407 determines that the combination has the highest priority
  • step S1407 determines that the combination has the highest priority
  • step S1409 determines that they do not match
  • step S1409: NO the CPU 11 returns the process to step S1401 so as to again specify the cooperative application, and repeats the above-described process.
  • step S1409: YES the CPU 11 cooperates both the applications (step S1410) to enable execution as a new application.
  • FIG. 15 is a view showing an example of an application list displayed on the display device 23 by the candidate application display unit 1203.
  • the CPU 11 displays a list of cooperation destination application candidates to which meta information that can be bound in descending order of priority is assigned.
  • FIG. 16 is an illustration of an operation screen of a mashup tool that makes mashup more efficient.
  • the application list is displayed on the display device 23 as a list, and the cooperation source application is provided with meta information that can be bound when a drag operation such as the mouse 22 is accepted.
  • the destination application is highlighted. The user can easily select any application linkage by performing a drop operation with the mouse 22 or the like on a desired application.
  • a storage device of an external computer connected to the data cooperation support device according to the present embodiment via a network may be provided with a mashup information storage unit, and may be read and written as necessary. You may make it memorize

Abstract

アプリケーション設計の自由度を損なうことなく、複数のアプリケーションを柔軟に連携させることが可能なデータ連携支援装置、方法及びコンピュータプログラムを提供することを目的とする。 連携先のアプリケーションが他のアプリケーションと連携している場合、他のアプリケーションの出力パラメータ、又は連携先のアプリケーションの入力パラメータの一方にのみメタ情報が付与されているか否かを判断する。一方にのみ付与されていると判断した場合、付与されている一方のメタ情報を付与されていない他方のメタ情報として付与する。他方のメタ情報として付与されたメタ情報と、連携元のアプリケーションの出力パラメータ又は連携先のアプリケーションの入力パラメータに付与されたメタ情報とが一致する場合にアプリケーションを連携する。

Description

複数のアプリケーション間でのデータ連携を支援する装置、方法及びコンピュータプログラム
 本発明は、アプリケーション設計の自由度を損なうことなく、複数のアプリケーションを柔軟に連携させることが可能な、複数のアプリケーション間でのデータ連携を支援する装置、方法及びコンピュータプログラムに関する。
 インターネット技術の急速な発展に伴い、ウェブ上で提供される複数のサービスを連携させて、新たなサービスを構築する、いわゆるマッシュアップが盛んに行われている。複数のサービスを連携する場合、一のサービスからの出力要素を、連携対象となるサービスのどのパラメータとして用いるかという設定は、マッシュアップ実行者が各サービスの内容を理解した上で手動で行う必要があり、煩雑な作業となっていた。
 少しでもサービスの連携を円滑に行うべく、様々なデータ連携技術が開発されている。例えば特許文献1では、アプリケーション間でデータ共有を実現するためにクリップボードを使用し、アプリケーション間で連携することが可能なデータ形式を事前に登録しておくことにより、登録されたデータ形式に一致するデータが付与されたデータを送受信するアプリケーション間でのみデータ連携が可能となるデータ連携装置が開示されている。これにより、登録されているデータ形式に1つでも一致するデータが付与されているデータを送受信するアプリケーション同士を連携させることができ、明示的な操作を行うことなく自動的にアプリケーションを連携させることができる。
 特許文献2では、要素サービスを連結するための連結シナリオを作成し、入出力のメタデータに対応するエンティティの意味的オントロジに応じて要素サービスを連結するサービス連結情報生成システムが開示されている。これにより、エンティティの名称が相違する場合であっても意味的オントロジが一致又は類似している場合には、要素サービスを連結することができる。
特開2006-190008号公報 特開2008-210227号公報
 しかし、特許文献1に開示されているデータ連携装置では、連携対象となるアプリケーション間にて送受信することが可能なデータに付与されるデータのデータ形式を登録しておかなければデータの連携をすることができず、実用に供するためには多くのデータ形式を事前に登録する必要が生じる。また、付与されるデータはユーザが意識して付与しておく必要があり、自動的に付与することはできないので、相互に他のアプリケーションを意識することなく独立して設計されたアプリケーション間を連携することが困難であることに変わりは無い。
 また、特許文献2に開示されているサービス連結情報生成システムでは、意味的オントロジを用いて連結の可能性を判断することはできるが、事前にオントロジデータベースを生成しておく必要があり、サービスの数が増えた場合にはオントロジデータベースへ多大なデータを登録する必要が生じ、日々発生するウェブアプリケーションに十分に対応することが困難であるという問題点があった。
 本発明は斯かる事情に鑑みてなされたものであり、アプリケーション設計の自由度を損なうことなく、複数のアプリケーションを柔軟に連携させることが可能な、複数のアプリケーション間でのデータ連携を支援する装置、方法及びコンピュータプログラムを提供することを目的とする。
 上記目的を達成するために第1発明に係るデータ連携を支援する装置は、アプリケーションがデータ連携された場合に、連携元のアプリケーションの出力パラメータに付与されたメタ情報及び/又は連携先のアプリケーションの入力パラメータに付与されたメタ情報を記憶するメタ情報記憶手段と、連携先のアプリケーションが他のアプリケーションと連携しているか否かを判断する連携判断手段と、該連携判断手段で連携していると判断した場合、前記他のアプリケーションの出力パラメータ又は前記連携先のアプリケーションの入力パラメータの一方にのみメタ情報が付与されているか否かを判断するメタ情報判断手段と、該メタ情報判断手段で一方にのみ付与されていると判断した場合、付与されている一方のメタ情報を付与されていない他方のメタ情報として付与するメタ情報付与手段と、該メタ情報付与手段で前記他方のメタ情報として付与されたメタ情報と、前記連携元のアプリケーションの出力パラメータ又は前記連携先のアプリケーションの入力パラメータに付与されたメタ情報とが一致するか否かを判断する判断手段と、該判断手段で一致すると判断されたアプリケーションを連携する連携手段とを備える。
 また、第2発明に係るデータ連携を支援する装置は、第1発明において、前記メタ情報付与手段で付与されたメタ情報に重み付け係数を付与する重み付け手段を備える。
 また、第3発明に係るデータ連携を支援する装置は、第2発明において、前記重み付け係数は、間接的に推定されて付与されたメタ情報であるほど値が小さくなるようにしてある。
 また、第4発明に係るデータ連携を支援する装置は、第2又は第3発明において、前記重み付け係数に基づいて、メタ情報を付与する優先順位を設定する優先順位設定手段と、アプリケーションの連携の指定を受け付ける連携指定受付手段と、該連携指定受付手段で連携元のアプリケーションの指定を受け付けた場合、連携することが可能な連携先アプリケーションを、設定した優先順位の高い順に一覧表示する候補アプリケーション表示手段とを備える。
 また、第5発明に係るデータ連携を支援する装置は、第2乃至第4発明のいずれか1つにおいて、前記優先順位設定手段は、連携元のアプリケーションの出力パラメータに付与されたメタ情報の重み付け係数と、連携先のアプリケーションの入力パラメータに付与されたメタ情報の重み付け係数とを加算し、加算値の大きい順に優先順位を高く設定するようにしてある。
 次に、上記目的を達成するために第6発明に係るデータ連携を支援する方法は、アプリケーションがデータ連携された場合に、連携元のアプリケーションの出力パラメータに付与されたメタ情報及び/又は連携先のアプリケーションの入力パラメータに付与されたメタ情報を記憶するステップと、連携先のアプリケーションが他のアプリケーションと連携しているか否かを判断するステップと、連携していると判断した場合、前記他のアプリケーションの出力パラメータ又は前記連携先のアプリケーションの入力パラメータの一方にのみメタ情報が付与されているか否かを判断するステップと、一方にのみ付与されていると判断した場合、付与されている一方のメタ情報を付与されていない他方のメタ情報として付与するステップと、前記他方のメタ情報として付与されたメタ情報と、前記連携元のアプリケーションの出力パラメータ又は前記連携先のアプリケーションの入力パラメータに付与されたメタ情報とが一致するか否かを判断するステップと、一致すると判断されたアプリケーションを連携するステップとを含む。
 次に、上記目的を達成するために第7発明に係るコンピュータプログラムは、複数のアプリケーション間でのデータ連携を支援するコンピュータで実行することが可能なコンピュータプログラムにおいて、前記コンピュータを、アプリケーションがデータ連携された場合に、連携元のアプリケーションの出力パラメータに付与されたメタ情報及び/又は連携先のアプリケーションの入力パラメータに付与されたメタ情報を記憶するメタ情報記憶手段、連携先のアプリケーションが他のアプリケーションと連携しているか否かを判断する連携判断手段、該連携判断手段で連携していると判断した場合、前記他のアプリケーションの出力パラメータ又は前記連携先のアプリケーションの入力パラメータの一方にのみメタ情報が付与されているか否かを判断するメタ情報判断手段、該メタ情報判断手段で一方にのみ付与されていると判断した場合、付与されている一方のメタ情報を付与されていない他方のメタ情報として付与するメタ情報付与手段、該メタ情報付与手段で前記他方のメタ情報として付与されたメタ情報と、前記連携元のアプリケーションの出力パラメータ又は前記連携先のアプリケーションの入力パラメータに付与されたメタ情報とが一致するか否かを判断する判断手段、及び該判断手段で一致すると判断されたアプリケーションを連携する連携手段として機能させる。
 また、第8発明に係るコンピュータプログラムは、第7発明において、前記コンピュータを、前記メタ情報付与手段で付与されたメタ情報に重み付け係数を付与する重み付け手段として機能させる。
 また、第9発明に係るコンピュータプログラムは、第8発明において、前記重み付け係数は、間接的に推定されて付与されたメタ情報であるほど値が小さくなるようにしてある。
 また、第10発明に係るコンピュータプログラムは、第8又は第9発明において、前記コンピュータを、前記重み付け係数に基づいて、メタ情報を付与する優先順位を設定する優先順位設定手段、アプリケーションの連携の指定を受け付ける連携指定受付手段、及び該連携指定受付手段で連携元のアプリケーションの指定を受け付けた場合、連携することが可能な連携先アプリケーションを、設定した優先順位の高い順に一覧表示する候補アプリケーション表示手段として機能させる
 また、第11発明に係るコンピュータプログラムは、第8乃至第10発明のいずれか1つにおいて、前記優先順位設定手段を、連携元のアプリケーションの出力パラメータに付与されたメタ情報の重み付け係数と、連携先のアプリケーションの入力パラメータに付与されたメタ情報の重み付け係数とを加算する手段、及び加算値の大きい順に優先順位を高く設定する手段として機能させる。
 本発明によれば、ユーザにより明示的に付与された、あるいは既に連携されているアプリケーションのメタ情報を集約して記憶しておくことにより、メタ情報が付与されていない場合であっても連携するためのメタ情報を推定して付与することができ、ウェブサービス等のアプリケーションの連携(マッシュアップ)を確実に行うことが可能となる。また、メタ情報に重み付けをすることにより、連携するアプリケーションに優先順位をつけることができ、優先順位の高い順に連携するアプリケーションを選択することができると共に、メタ情報を自動的に付与することによる、各アプリケーションへのメタ情報の想定していない伝播を未然に防止することができる。
本発明の実施の形態1に係る複数のアプリケーション間でのデータ連携を支援する装置を含むデータ連携システムの構成例を示すブロック図である。 本発明の実施の形態1に係るマッシュアップ情報記憶部のデータ構成の例示図である。 従来のマッシュアップ操作の説明図である。 本発明の実施の形態1に係るデータ連携システムのメタ情報を用いたマッシュアップ操作の説明図である。 連携先アプリケーションにメタ情報が付与されていない場合のマッシュアップ操作の例示図である。 本発明の実施の形態1に係るデータ連携支援装置の機能ブロック図である。 本発明の実施の形態1に係るデータ連携支援装置のCPUのデータ連携支援処理の手順を示すフローチャートである。 本発明の実施の形態2に係るマッシュアップ情報記憶部のデータ構成の例示図である。 メタ情報を用いたマッシュアップ操作の説明図である。 重み付け係数を追加した場合のマッシュアップ操作の説明図である。 既存のアプリケーション連携に関する情報として、マッシュアップ情報記憶部に記憶されている情報を示す模式図である。 他のアプリケーションの優先順位を付ける例を示す模式図である。 本発明の実施の形態2に係るデータ連携支援装置の機能ブロック図である。 本発明の実施の形態2に係るデータ連携支援装置のCPUのデータ連携支援処理の手順を示すフローチャートである。 アプリケーションリストの例示図である。 マッシュアップを効率化するマッシュアップツールの操作画面の例示図である。
 以下、本発明の実施の形態に係る複数のアプリケーション間でのデータ連携を支援する装置について、図面に基づいて具体的に説明する。以下の実施の形態は、特許請求の範囲に記載された発明を限定するものではなく、実施の形態の中で説明されている特徴的事項の組み合わせの全てが解決手段の必須事項であるとは限らないことは言うまでもない。
 また、本発明は多くの異なる態様にて実施することが可能であり、実施の形態の記載内容に限定して解釈されるべきものではない。実施の形態を通じて同じ要素には同一の符号を付している。
 以下の実施の形態では、コンピュータシステムにコンピュータプログラムを導入した複数のアプリケーション間でのデータ連携を支援する装置について説明するが、当業者であれば明らかな通り、本発明はその一部をコンピュータで実行することが可能なコンピュータプログラムとして実施することができる。したがって、本発明は、複数のアプリケーション間でのデータ連携を支援する装置というハードウェアとしての実施の形態、ソフトウェアとしての実施の形態、又はソフトウェアとハードウェアとの組み合わせの実施の形態をとることができる。コンピュータプログラムは、ハードディスク、DVD、CD、光記憶装置、磁気記憶装置等の任意のコンピュータで読み取ることが可能な記録媒体に記録することができる。
 本発明の実施の形態では、ユーザにより明示的に付与された、あるいは既に連携されているアプリケーションのメタ情報を集約して記憶しておくことにより、メタ情報が付与されていない場合であっても連携するためのメタ情報を推定して付与することができ、ウェブサービス等のアプリケーションの連携(マッシュアップ)を確実に行うことが可能となる。また、メタ情報に重み付けをすることにより、連携するアプリケーションに優先順位をつけることができ、優先順位の高い順に連携するアプリケーションを選択することができると共に、メタ情報を自動的に付与することによる、各アプリケーションへのメタ情報の想定していない伝播を未然に防止することができる。
 (実施の形態1)
 図1は、本発明の実施の形態1に係る複数のアプリケーション間でのデータ連携を支援する装置を含むデータ連携システムの構成例を示すブロック図である。本発明の実施の形態1に係るデータ連携システムは、複数のコンピュータ3、3、・・・と、データ連携支援装置1とがネットワーク2を介してデータ通信することが可能に接続されている。
 データ連携支援装置1は、少なくともCPU(中央演算装置)11、メモリ12、記憶装置13、I/Oインタフェース14、通信インタフェース15、ビデオインタフェース16、可搬型ディスクドライブ17及び上述したハードウェアを接続する内部バス18で構成されている。
 CPU11は、内部バス18を介してデータ連携支援装置1の上述したようなハードウェア各部と接続されており、上述したハードウェア各部の動作を制御するとともに、記憶装置13に記憶されているコンピュータプログラム100に従って、種々のソフトウェア的機能を実行する。メモリ12は、SRAM、SDRAM等の揮発性メモリで構成され、コンピュータプログラム100の実行時にロードモジュールが展開され、コンピュータプログラム100の実行時に発生する一時的なデータ等を記憶する。
 記憶装置13は、内蔵される固定型記憶装置(ハードディスク)、ROM等で構成されている。記憶装置13に記憶されているコンピュータプログラム100は、プログラム及びデータ等の情報を記録したDVD、CD-ROM等の可搬型記録媒体90から、可搬型ディスクドライブ17によりダウンロードされ、実行時には記憶装置13からメモリ12へ展開して実行される。もちろん、通信インタフェース15を介してネットワーク2に接続されている外部のコンピュータからダウンロードされたコンピュータプログラムであっても良い。
 また記憶装置13は、マッシュアップ情報記憶部(メタ情報記憶部)131を備えている。マッシュアップ情報記憶部131には、外部のコンピュータ3、3、・・・にてデータ連携したアプリケーションの入出力パラメータに付与されたメタ情報を、マッシュアップされる都度ネットワーク2を介して受信して記憶する。図2は、本発明の実施の形態1に係るマッシュアップ情報記憶部131のデータ構成の例示図である。
 図2に示すように、マッシュアップ情報記憶部131には、マッシュアップされた連携元アプリケーションを識別する情報である連携元アプリケーションID、連携元アプリケーションの出力パラメータ、及び出力パラメータに付与されている出力メタ情報、並びにマッシュアップされた連携先アプリケーションを識別する情報である連携先アプリケーションID、連携先アプリケーションの入力パラメータ、及び入力パラメータに付与されている入力メタ情報が記憶されている。出力パラメータと入力パラメータが一致していない場合であっても、出力パラメータに付与されている出力メタ情報と入力パラメータに付与されている入力メタ情報とが一致している場合には連携させることができる。また、メタ情報はいずれか一方に含まれていれば足りる。
 図1に戻って、通信インタフェース15は内部バス18に接続されており、インターネット、LAN、WAN等の外部のネットワーク2に接続されることにより、外部のコンピュータ3、3、・・・等とデータ送受信を行うことが可能となっている。
 I/Oインタフェース14は、キーボード21、マウス22等のデータ入力媒体と接続され、データの入力を受け付ける。また、ビデオインタフェース16は、CRTモニタ、LCD等の表示装置23と接続され、所定の画像を表示する。
 以下、上述した構成のデータ連携支援装置1を用いるデータ連携システムの動作について説明する。図3は、従来のマッシュアップ操作の説明図である。図3において、まずレストランの検索処理を実行するアプリケーション31と、最寄駅の検索処理を実行するアプリケーション32とを連携する場合、アプリケーション31の出力パラメータはレストランの住所を示すaddress及びレストラン名を示すnameである。一方、アプリケーション32の入力パラメータはIである。このように、アプリケーションの設計者は入出力パラメータを自由に設定することができるので、アプリケーションを連携することを前提に共通の入出力パラメータを設定しておくことは難しい。したがって、アプリケーション31とアプリケーション32とを連携させる場合、アプリケーション32の入力パラメータIとアプリケーション31の出力パラメータaddressとをバインドさせる必要があり、アプリケーション32の入力パラメータIがアプリケーション31の出力パラメータaddressと一致するようユーザが明示的に設定する必要がある。
 一方、郵便番号変換処理を実行するアプリケーション33をアプリケーション32と連携しようとする場合、アプリケーション33の出力パラメータは郵便番号に対応する住所を示すadrと仮名表記であるadr_kanaである。したがって、アプリケーション33とアプリケーション32とを連携する場合にも、アプリケーション32の入力パラメータIがアプリケーション33の出力パラメータadrと一致するようユーザが明示的に設定する必要がある。
 しかし、既にアプリケーション31とアプリケーション32とを連携している場合、アプリケーション32の入力パラメータIがアプリケーション31の出力パラメータaddressと一致するよう設定されていることから、アプリケーション32の入力パラメータIがアプリケーション33の出力パラメータadrと一致するよう設定することができない。したがって、連携するためにバインドさせるべき入出力パラメータがわかっているにもかかわらず、アプリケーション33とアプリケーション32とを連携することができないという問題点があった。
 そこで、本実施の形態1では、各アプリケーションの入出力パラメータにメタ情報を付与する。図4は、本発明の実施の形態1に係るデータ連携システムのメタ情報を用いたマッシュアップ操作の説明図である。
 図4において、まずレストランの検索処理を実行するアプリケーション41と、最寄駅の検索処理を実行するアプリケーション42とを連携する場合、アプリケーション41の出力パラメータはレストランの住所を示すaddress及びレストラン名を示すnameである。一方、アプリケーション42の入力パラメータはIであるので、アプリケーション41とアプリケーション42とを連携する場合、図3と同様、アプリケーション42の入力パラメータIとアプリケーション41の出力パラメータaddressとをバインドさせる必要があり、アプリケーション42の入力パラメータIがアプリケーション41の出力パラメータaddressと一致するようユーザが明示的に設定する必要がある。
 しかし、このままでは図3と同様、アプリケーション42はアプリケーション41としか連携することができないので、各アプリケーションの入出力パラメータにメタ情報を付与する。付与するメタ情報としては、date、price、address、latitude等のユーザ固有のメタ情報であれば特に限定されるものではない。その他、住所、緯度、経度、日付等の正規化されたデータタイプを付与しても良いし、yyyy/mm/dd等のデータ書式を付与しても良い。
 図4では、アプリケーション41の出力パラメータaddressにメタ情報“address”が付与されており、アプリケーション42の入力パラメータIにもメタ情報“address”が付与されている。したがって、連携対象となるアプリケーション41、42間にて出力パラメータaddressと入力パラメータIとが相違していても、付与されているメタ情報“address”が一致していることから、アプリケーション41の出力パラメータaddressとアプリケーション42の入力パラメータIとをバインドさせることができる。
 同様に、郵便番号変換処理を実行するアプリケーション43の出力パラメータadrにもメタ情報“address”が付与されており、連携対象となるアプリケーション43、42間にて出力パラメータadrと入力パラメータIとが相違していても、付与されているメタ情報“address”が一致していることから、アプリケーション43の出力パラメータadrとアプリケーション42の入力パラメータIともバインドさせることができる。このようにメタ情報を付与することにより、アプリケーション設計の自由度を損なうことなく、アプリケーション間の連携を自由に行うことも可能となる。
 なお、アプリケーション設計時に、必ずしもメタ情報を付与しているとは限らない。図5は、連携先アプリケーションにメタ情報が付与されていない場合のマッシュアップ操作の例示図である。
 図5において、まずレストランの検索処理を実行するアプリケーション41と、最寄駅の検索処理を実行するアプリケーション42とを連携する場合、アプリケーション41の出力パラメータはレストランの住所を示すaddress及びレストラン名を示すnameである。一方、アプリケーション42の入力パラメータはIであるので、アプリケーション41とアプリケーション42とを連携する場合、図3と同様、アプリケーション42の入力パラメータIとアプリケーション41の出力パラメータaddressとをバインドさせる必要がある。
 しかし、アプリケーション41の出力パラメータaddressにメタ情報“address”が付与されているのに対し、アプリケーション42の入力パラメータIにはメタ情報が付与されていない。この場合、連携対象となるアプリケーション41、42間にて出力パラメータaddressと入力パラメータIとが相違していても、付与されているメタ情報“address”が一致している場合にはバインドすることが可能であることから、アプリケーション41とアプリケーション42とが連携された時点で、アプリケーション42の入力パラメータIにはメタ情報“address”が付与されていると推定して、マッシュアップ情報記憶部131に記憶する。
 このように、バインドされている事実に基づいてメタ情報を推定することにより、例えば他のアプリケーション43の出力パラメータadrにもメタ情報“address”が付与されている場合、連携対象となるアプリケーション43、42間にて出力パラメータadrと入力パラメータIとが相違していても、アプリケーション43の出力パラメータadrに付与されているメタ情報“address”と、推定されてマッシュアップ情報記憶部131に記憶されているメタ情報“address”とが一致している場合には、バインドすることが可能であると判断することができる。
 図6は、本発明の実施の形態1に係るデータ連携支援装置1の機能ブロック図である。まず、ネットワーク2を介して、アプリケーションがデータ連携された場合に、連携元のアプリケーションの出力パラメータに付与されたメタ情報及び/又は連携先のアプリケーションの入力パラメータに付与されたメタ情報を収集して、記憶装置13のマッシュアップ情報記憶部131に記憶しておく。
 連携元アプリケーション指定受付部(連携指定受付手段)601は、連携元となるアプリケーションの指定を受け付ける。具体的には、一覧表示されたアプリケーションリストから、マウス22等のクリック操作、キーボード21のキーイン操作等により指定を受け付ける。
 連携先アプリケーション指定受付部(連携指定受付手段)602は、連携先となるアプリケーションの指定を受け付ける。具体的には、一覧表示されたアプリケーションリストから、マウス22等のクリック操作、キーボード21のキーイン操作等により指定を受け付ける。
 連携判断部603は、指定を受け付けた連携先のアプリケーションが、他のアプリケーションと連携しているか否かを判断する。具体的には、マッシュアップ情報記憶部131を照会して、既に連携されたアプリケーションが存在するか否かを判断する。
 メタ情報判断部604は、連携判断部603で他のアプリケーションと連携していると判断した場合、連携している他のアプリケーションの出力パラメータ、又は指定を受け付けた連携先のアプリケーションの入力パラメータの一方にのみメタ情報が付与されているか否かを判断する。メタ情報が付与されているか否かは、マッシュアップ情報記憶部131に記憶されているか否かで判断することができる。
 メタ情報付与部605は、メタ情報判断部604で一方にのみ付与されていると判断した場合、付与されている一方のメタ情報を付与されていない他方のメタ情報として、それぞれのパラメータに付与する。すなわち、連携している他のアプリケーションの出力パラメータにのみメタ情報が付与されている場合には、指定を受け付けた連携先のアプリケーションの入力パラメータに該メタ情報を付与し、逆に指定を受け付けた連携先のアプリケーションの入力パラメータにのみメタ情報が付与されている場合には、連携している他のアプリケーションの出力パラメータに該メタ情報を付与する。
 判断部606は、メタ情報付与部605で付与されたメタ情報と、連携元のアプリケーションの出力パラメータ又は連携先のアプリケーションの入力パラメータに付与されたメタ情報とが一致するか否かを判断する。連携部607は、判断部606で両者のメタ情報が一致すると判断した場合、両アプリケーションを連携する。
 図7は、本発明の実施の形態1に係るデータ連携支援装置1のCPU11のデータ連携支援処理の手順を示すフローチャートである。データ連携支援装置1のCPU11は、連携元となるアプリケーション及び連携先となるアプリケーションの指定を受け付ける(ステップS701)。具体的には、一覧表示されたアプリケーションリストから、マウス22等のクリック操作、キーボード21のキーイン操作等により指定を受け付ける。
 CPU11は、指定を受け付けた連携先のアプリケーションが、他のアプリケーションと連携しているか否かを判断する(ステップS702)。具体的には、マッシュアップ情報記憶部131を照会して、既に連携されたアプリケーションが存在するか否かを判断する。
 CPU11が、他のアプリケーションと連携していると判断した場合(ステップS702:YES)、CPU11は、連携している他のアプリケーションの出力パラメータ、又は指定を受け付けた連携先のアプリケーションの入力パラメータの一方にのみメタ情報が付与されているか否かを判断する(ステップS703)。メタ情報が付与されているか否かは、マッシュアップ情報記憶部131に記憶されているか否かで判断することができる。
 CPU11が、一方にのみメタ情報が付与されていると判断した場合(ステップS703:YES)、CPU11は、一方のパラメータに付与されているメタ情報を、付与されていない他方のパラメータに付与する(ステップS704)。例えば、連携している他のアプリケーションの出力パラメータにのみメタ情報が付与されている場合には、指定を受け付けた連携先のアプリケーションの入力パラメータに該メタ情報を付与し、逆に指定を受け付けた連携先のアプリケーションの入力パラメータにのみメタ情報が付与されている場合には、連携している他のアプリケーションの出力パラメータに該メタ情報を付与する。
 CPU11が、他のアプリケーションと連携していないと判断した場合(ステップS702:NO)、両方にメタ情報が付与されていると判断した場合(ステップS703:NO)、CPU11は、ステップS704をスキップし、連携するアプリケーションの出力パラメータのメタ情報と入力パラメータのメタ情報とが一致するか否かを判断する(ステップS705)。CPU11が、一致しないと判断した場合(ステップS705:NO)、CPU11は、連携するアプリケーションの指定を再度行うように処理をステップS701へ戻し、上述した処理を繰り返す。CPU11が、一致すると判断した場合(ステップS705:YES)、CPU11は、両アプリケーションを連携して(ステップS706)、新たな一のアプリケーションとして実行可能とする。
 以上のように本実施の形態1によれば、ユーザにより明示的に付与された、あるいは既に連携されているアプリケーションのメタ情報を収集してマッシュアップ情報記憶部131に記憶しておくことにより、連携するアプリケーションの入出力パラメータにメタ情報が付与されていない場合であっても、連携するためのメタ情報を推定して付与することができ、ウェブサービス等のアプリケーションの連携(マッシュアップ)を確実に行うことが可能となる。
 (実施の形態2)
 本発明の実施の形態2に係る複数のアプリケーション間でのデータ連携を支援する装置を含むデータ連携システムの構成は、実施の形態1と同様であることから、同一の符号を付することにより詳細な説明は省略する。本実施の形態2は、入出力パラメータに付与されるメタ情報に重み付けをする点で実施の形態1と相違する。
 したがって、記憶装置13のマッシュアップ情報記憶部(メタ情報記憶部)131に記憶される情報に重み付け係数が追加される。図8は、本発明の実施の形態2に係るマッシュアップ情報記憶部131のデータ構成の例示図である。
 図8に示すように、マッシュアップ情報記憶部131には、マッシュアップされた連携元アプリケーションを識別する情報である連携元アプリケーションID、連携元アプリケーションの出力パラメータ、出力パラメータに付与されている出力メタ情報、及び出力メタ情報の重み付け係数並びにマッシュアップされた連携先アプリケーションを識別する情報である連携先アプリケーションID、連携先アプリケーションの入力パラメータ、入力パラメータに付与されている入力メタ情報、及び入力メタ情報の重み付け係数が記憶されている。メタ情報は、入出力パラメータに対して複数記憶することができ、メタ情報ごとに重み付け係数を記憶することができる。
 重み付け係数は、明示的にメタ情報が指定される場合、例えばメタ情報の指定を直接受け付けた場合を1/1とし、連携相手のアプリケーションのパラメータに付与されているメタ情報を用いる場合には1/2、他の連携情報に基づいて推定してメタ情報を付与した場合には1/4、というように定めている。重み付け係数の定め方はこれに限定されるものではなく、メタ情報として用いる優先順位を定めることさえできればどのような定め方であっても良い。
 図9は、メタ情報を用いたマッシュアップ操作の説明図である。図9において、まず文献の検索処理を実行するアプリケーション91と、人名事典として汎用辞書であるWikipediaを用いた検索処理を実行するアプリケーション92とを連携する場合、アプリケーション91の出力パラメータは作者名を示すauthor及び文献名を示すnameである。出力パラメータauthorには、メタ情報“person”が付与されている。
 一方、アプリケーション92の入力パラメータはkeywordであり、汎用辞書であるWikipediaを用いることから当然のことながらメタ情報は付与されていない。したがって、アプリケーション91とアプリケーション92とが連携した場合、アプリケーション92の入力パラメータkeywordには、メタ情報“person”が自動的に付与される。
 アプリケーション91とアプリケーション92とが連携している状態で、駅の検索処理を実行するアプリケーション93をアプリケーション92と連携しようとする場合、アプリケーション93の駅名を示す出力パラメータstationとアプリケーション92の入力パラメータkeywordとがバインドする必要がある。しかし、アプリケーション92の入力パラメータkeywordには、既にメタ情報“person”が付与されており、駅名を示す出力パラメータstationに対して人名を示すメタ情報“person”が伝播してしまう。したがって、駅名の検索処理であるにもかかわらず、絶えず人名検索辞書が候補として選択されるおそれが生じ、アプリケーションの連携に支障をきたすおそれがあった。
 そこで、本実施の形態2では、メタ情報の付与されている状況に応じて重み付けをすることにより、想定していない伝播を未然に防止する。図10は、重み付け係数を追加した場合のマッシュアップ操作の説明図である。
 図10において、まず文献の検索処理を実行するアプリケーション91と、人名事典として汎用辞書であるWikipediaを用いた検索処理を実行するアプリケーション92とを連携する場合、アプリケーション91の出力パラメータは作者名を示すauthor及び文献名を示すnameである。出力パラメータauthorには、メタ情報“person”が付与されている。明示的にメタ情報が付与されているので、出力パラメータauthorに付与されているメタ情報“person”には、重み付け係数(1/1)が追加されている。
 一方、アプリケーション92の入力パラメータはkeywordであり、汎用辞書であるWikipediaを用いることから当然のことながらメタ情報は付与されていない。したがって、アプリケーション91とアプリケーション92とが連携した場合、アプリケーション92の入力パラメータkeywordには、メタ情報“person”が自動的に付与される。連携するアプリケーションのいずれか一方のみにメタ情報を付与するので、入力パラメータkeywordに付与されているメタ情報“person”には、重み付け係数(1/2)が追加されている。
 アプリケーション91とアプリケーション92とが連携している状態で、駅の検索処理を実行するアプリケーション93をアプリケーション92と連携しようとする場合、アプリケーション93の駅名を示す出力パラメータstationとアプリケーション92の入力パラメータkeywordとがバインドする必要がある。しかし、アプリケーション92の入力パラメータkeywordには、既にメタ情報“person”が付与されており、駅名を示す出力パラメータstationに対して人名を示すメタ情報“person”が伝播してしまう。この場合、連携している他のアプリケーションを参照してメタ情報が付与されているので、出力パラメータstationに付与されているメタ情報“person”には、重み付け係数(1/4)が追加されている。
 このように、出力パラメータ、入力パラメータごとに、付与されるメタ情報の重み付け係数が追加されているので、出力パラメータ及び/又は入力パラメータが複数記憶されている場合、優先順位が高い組み合わせ、すなわち重み付け係数の組み合わせにおいて最も重み付けが高いと評価される組み合わせのメタ情報を選択することにより、想定していない伝播を未然に防止することが可能となる。
 メタ情報が複数付与されている場合の具体例について説明する。図11は、既存のアプリケーション連携に関する情報として、マッシュアップ情報記憶部131に記憶されている情報を示す模式図である。
 図11において、文献の検索処理を実行するアプリケーション111、中古車の検索処理を実行するアプリケーション112、及び温泉の検索処理を実行するアプリケーション113のそれぞれが、汎用辞書であるWikipediaを用いた検索処理を実行するアプリケーション114と連携している。アプリケーション111は、出力パラメータauthorにはメタ情報“person”、“keyword”、“product”が付与されており、それぞれ重み付け係数(1/1)、(1/2)、(1/4)が追加されている。
 同様に、アプリケーション112は、出力パラメータmodelにはメタ情報“product”、“keyword”、“person”が付与されており、それぞれ重み付け係数(1/1)、(1/2)、(1/4)が追加されている。アプリケーション113は、出力パラメータkounouにはメタ情報“keyword”、“person”、“product”が付与されており、それぞれ重み付け係数(1/2)、(1/4)、(1/4)が追加されている。
 一方、連携先であるアプリケーション114は、入力パラメータkeywordにはメタ情報“keyword”、“person”、“product”が付与されており、それぞれ重み付け係数(1/1)、(1/2)、(1/2)が追加されている。
 図12は、図11のアプリケーション連携に対する他のアプリケーションの優先順位を付ける例を示す模式図である。図12(a)は、ウェブ検索を実行するAPIであるアプリケーション121を示しており、入力パラメータkeywordにはメタ情報“keyword”が付与され、重み付け係数(1/1)が追加されている。
 この場合、アプリケーション111、112、113ともにメタ情報“keyword”の重み付け係数は(1/2)であることから、連携元アプリケーションの候補として、アプリケーション111、112、113は優先順位を付けることができないとわかる。
 図12(b)は、人物検索を実行するAPIであるアプリケーション122を示しており、入力パラメータwhoにはメタ情報“person”、“keyword”が付与されており、それぞれ重み付け係数(1/1)、(1/1)が追加されている。この場合、メタ情報“person”に対しては、アプリケーション111に追加されている重み付け係数(1/1)が最も大きく、メタ情報“keyword”に対しては、アプリケーション111、112、113ともに重み付け係数(1/2)が追加されている。したがって、メタ情報“person”に対しては、アプリケーション111に追加されている重み付け係数が(1/1)と最も大きいことから、アプリケーション111との連携が第一候補となる。
 このように、出力パラメータ、入力パラメータごとに、付与されるメタ情報の重み付け係数が追加されているので、出力パラメータ及び/又は入力パラメータが複数記憶されている場合、優先順位が高い組み合わせ、すなわち重み付け係数の組み合わせにおいてもっとも重み付けが高いと評価される組み合わせのメタ情報を選択することにより、想定していない伝播を未然に防止することが可能となる。
 図13は、本発明の実施の形態2に係るデータ連携支援装置1の機能ブロック図である。まず、ネットワーク2を介して、アプリケーションがデータ連携された場合に、連携元のアプリケーションの出力パラメータに付与されたメタ情報及び/又は連携先のアプリケーションの入力パラメータに付与されたメタ情報を収集して、記憶装置13のマッシュアップ情報記憶部131に記憶しておく。
 連携元アプリケーション指定受付部(連携指定受付手段)601は、連携元となるアプリケーションの指定を受け付ける。具体的には、一覧表示されたアプリケーションリストから、マウス22等のクリック操作、キーボード21のキーイン操作等により指定を受け付ける。
 連携先アプリケーション指定受付部(連携指示上受付手段)602は、連携先となるアプリケーションの指定を受け付ける。具体的には、一覧表示されたアプリケーションリストから、マウス22等のクリック操作、キーボード21のキーイン操作等により指定を受け付ける。
 連携判断部603は、指定を受け付けた連携先のアプリケーションが、他のアプリケーションと連携しているか否かを判断する。具体的には、マッシュアップ情報記憶部131を照会して、既に連携されたアプリケーションが存在するか否かを判断する。
 メタ情報判断部604は、連携判断部603で他のアプリケーションと連携していると判断した場合、連携している他のアプリケーションの出力パラメータ、又は指定を受け付けた連携先のアプリケーションの入力パラメータの一方にのみメタ情報が付与されているか否かを判断する。メタ情報が付与されているか否かは、マッシュアップ情報記憶部131に記憶されているか否かで判断することができる。
 メタ情報付与部605は、メタ情報判断部604で一方にのみ付与されていると判断した場合、付与されている一方のメタ情報を付与されていない他方のメタ情報として、それぞれのパラメータに付与する。すなわち、連携している他のアプリケーションの出力パラメータにのみメタ情報が付与されている場合には、指定を受け付けた連携先のアプリケーションの入力パラメータに該メタ情報を付与し、逆に指定を受け付けた連携先のアプリケーションの入力パラメータにのみメタ情報が付与されている場合には、連携している他のアプリケーションの出力パラメータに該メタ情報を付与する。
 重み付け部1101は、入出力パラメータに付与されたメタ情報ごとに重み付け係数を追加して、マッシュアップ情報記憶部131に記憶する。追加される重み付け係数は、間接的に推定されて付与されたメタ情報であるほど値が小さくなることが好ましい。メタ情報を組み合わせた場合に、重み付け係数の加算値が大きい順にメタ情報を付与する優先順位を設定するときには、明示的に指示された重み付け係数が追加されたメタ情報であるほど正しいと考えることにより、選択を受け付ける候補として付与される可能性を高めるためである。
 優先順位設定部1102は、重み付け部1101で追加された重み付け係数に基づいて、メタ情報を付与する優先順位を設定する。本実施の形態2では、追加された重み付け係数を加算した加算値を算出し、加算値の大きい順に高い優先順位を付与するようにしてある。例えば連携元アプリケーションの出力パラメータのメタ情報の重み付け係数が1/1であり、連携先アプリケーションの入力パラメータのメタ情報の重み付け係数が1/4である場合、加算値5/4を算出する。同一の連携先アプリケーションに対して、他の連携元アプリケーションの出力パラメータのメタ情報の重み付け係数が1/2である場合、加算値3/4を算出する。したがって、前者の加算値の方が大きいことから優先順位が高いと判断することができ、連携元アプリケーションの出力パラメータのメタ情報を前者のメタ情報として付与することができる。
 判断部606は、メタ情報付与部605で付与されたメタ情報と、連携元のアプリケーションの出力パラメータ又は連携先のアプリケーションの入力パラメータに付与されたメタ情報とが一致するか否かを判断する。連携部607は、判断部606で両者のメタ情報が一致すると判断した場合、両アプリケーションを連携する。
 なお、メタ情報が入出力パラメータごとに複数付与されている場合には、判断部606での判断結果が複数になる場合も生じうる。そこで、候補アプリケーション表示部1103を設けて、候補となるメタ情報を含むアプリケーションを一覧表示しても良い。これにより、誤った連携を未然に防止することができ、目視で確認しつつ連携するアプリケーションを選択することができる。
 図14は、本発明の実施の形態2に係るデータ連携支援装置1のCPU11のデータ連携支援処理の手順を示すフローチャートである。データ連携支援装置1のCPU11は、連携元となるアプリケーション及び連携先となるアプリケーションの指定を受け付ける(ステップS1401)。具体的には、一覧表示されたアプリケーションリストから、マウス22等のクリック操作、キーボード21のキーイン操作等により指定を受け付ける。
 CPU11は、指定を受け付けた連携先のアプリケーションが、他のアプリケーションと連携しているか否かを判断する(ステップS1402)。具体的には、マッシュアップ情報記憶部131を照会して、既に連携されたアプリケーションが存在するか否かを判断する。
 CPU11が、他のアプリケーションと連携していると判断した場合(ステップS1402:YES)、CPU11は、連携している他のアプリケーションの出力パラメータ、又は指定を受け付けた連携先のアプリケーションの入力パラメータの一方にのみメタ情報が付与されているか否かを判断する(ステップS1403)。メタ情報が付与されているか否かは、マッシュアップ情報記憶部131に記憶されているか否かで判断することができる。
 CPU11が、一方にのみメタ情報が付与されていると判断した場合(ステップS1403:YES)、CPU11は、一方のパラメータに付与されているメタ情報を、付与されていない他方のパラメータに付与する(ステップS1404)。例えば、連携している他のアプリケーションの出力パラメータにのみメタ情報が付与されている場合には、指定を受け付けた連携先のアプリケーションの入力パラメータに該メタ情報を付与し、逆に指定を受け付けた連携先のアプリケーションの入力パラメータにのみメタ情報が付与されている場合には、連携している他のアプリケーションの出力パラメータに該メタ情報を付与する。
 CPU11が、他のアプリケーションと連携していないと判断した場合(ステップS1402:NO)、両方にメタ情報が付与されていると判断した場合(ステップS1403:NO)、CPU11は、ステップS1404をスキップし、メタ情報が付与された状況に応じて重み付け係数をメタ情報ごとに追加する(ステップS1405)。
 CPU11は、追加されている重み付け係数に基づいて、指定を受け付けた連携元アプリケーションと連携先アプリケーションとの間でマッシュアップ情報記憶部131に記憶されているメタ情報のすべての組み合わせについて優先順位を設定する(ステップS1406)。本実施の形態2では、メタ情報に追加されている重み付け係数を加算した加算値の大きい順に優先順位を設定する。
 CPU11は、設定した優先順位に基づいて、付与したメタ情報の組み合わせが、設定した優先順位が最も高い組み合わせであるか否かを判断する(ステップS1407)。CPU11が、優先順位が最も高い組み合わせではないと判断した場合(ステップS1407:NO)、CPU11は、優先順位が最も高いメタ情報の組み合わせに変更し(ステップS1408)、マッシュアップ情報記憶部131に記憶する。
 CPU11が、優先順位が最も高い組み合わせであると判断した場合(ステップS1407:YES)、CPU11は、ステップS1408をスキップし、連携するアプリケーションの出力パラメータのメタ情報と入力パラメータのメタ情報とが一致するか否かを判断する(ステップS1409)。CPU11が、一致しないと判断した場合(ステップS1409:NO)、CPU11は、連携するアプリケーションの指定を再度行うように処理をステップS1401へ戻し、上述した処理を繰り返す。CPU11が、一致すると判断した場合(ステップS1409:YES)、CPU11は、両アプリケーションを連携して(ステップS1410)、新たな一のアプリケーションとして実行可能とする。
 図15は、候補アプリケーション表示部1203にて、表示装置23に表示されるアプリケーションリストの例示図である。図15に示すように、連携元アプリケーションの指定を受け付けた場合、CPU11は、優先順位が高い順にバインドすることが可能なメタ情報が付与された連携先アプリケーションの候補を一覧表示する。一覧表示画面からの選択指示の入力を、連携先アプリケーションの指定の受付とすることにより、より精度良く適切なアプリケーション間で連携することが可能となる。
 図16は、マッシュアップを効率化するマッシュアップツールの操作画面の例示図である。図16に示すように、アプリケーションリストを表示装置23に一覧表示しておき、連携元アプリケーションをマウス22等のドラッグ操作を受け付けた時点で、バインドすることが可能なメタ情報が付与されている連携先アプリケーションが強調表示される。ユーザは、所望のアプリケーション上でマウス22等によるドロップ操作をすることで、任意のアプリケーション連携を容易に選択することができる。
 以上のように本実施の形態2によれば、メタ情報に重み付けをすることにより、連携するアプリケーションに優先順位をつけることができ、優先順位の高い順に連携するアプリケーションを選択することができると共に、メタ情報を自動的に付与することによる、各アプリケーションへのメタ情報の想定していない伝播を未然に防止することができる。
 なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨の範囲内であれば多種の変更、改良等が可能である。例えばネットワークを介して本実施の形態に係るデータ連携支援装置に接続されている外部のコンピュータの記憶装置に、マッシュアップ情報記憶部を備え、必要に応じて読み書きするようにしても良いし、分散環境にてネットワーク上の仮想ディスクに記憶するようにしても良い。
 1 データ連携支援装置
 2 ネットワーク
 3 コンピュータ
 11 CPU
 12 メモリ
 13 記憶装置
 14 I/Oインタフェース
 15 通信インタフェース
 16 ビデオインタフェース
 17 可搬型ディスクドライブ
 18 内部バス
 23 表示装置
 90 可搬型記録媒体
 100 コンピュータプログラム
 131 マッシュアップ情報記憶部

Claims (11)

  1.  アプリケーションがデータ連携された場合に、連携元のアプリケーションの出力パラメータに付与されたメタ情報及び/又は連携先のアプリケーションの入力パラメータに付与されたメタ情報を記憶するメタ情報記憶手段と、
     連携先のアプリケーションが他のアプリケーションと連携しているか否かを判断する連携判断手段と、
     該連携判断手段で連携していると判断した場合、前記他のアプリケーションの出力パラメータ又は前記連携先のアプリケーションの入力パラメータの一方にのみメタ情報が付与されているか否かを判断するメタ情報判断手段と、
     該メタ情報判断手段で一方にのみ付与されていると判断した場合、付与されている一方のメタ情報を付与されていない他方のメタ情報として付与するメタ情報付与手段と、
     該メタ情報付与手段で前記他方のメタ情報として付与されたメタ情報と、前記連携元のアプリケーションの出力パラメータ又は前記連携先のアプリケーションの入力パラメータに付与されたメタ情報とが一致するか否かを判断する判断手段と、
     該判断手段で一致すると判断されたアプリケーションを連携する連携手段と
     を備える装置。
  2.  前記メタ情報付与手段で付与されたメタ情報に重み付け係数を付与する重み付け手段を備える請求項1記載の装置。
  3.  前記重み付け係数は、間接的に推定されて付与されたメタ情報であるほど値が小さくなるようにしてある請求項2記載の装置。
  4.  前記重み付け係数に基づいて、メタ情報を付与する優先順位を設定する優先順位設定手段と、
     アプリケーションの連携の指定を受け付ける連携指定受付手段と、
     該連携指定受付手段で連携元のアプリケーションの指定を受け付けた場合、連携することが可能な連携先アプリケーションを、設定した優先順位の高い順に一覧表示する候補アプリケーション表示手段と
     を備える請求項2又は3記載の装置。
  5.  前記優先順位設定手段は、
     連携元のアプリケーションの出力パラメータに付与されたメタ情報の重み付け係数と、連携先のアプリケーションの入力パラメータに付与されたメタ情報の重み付け係数とを加算し、加算値の大きい順に優先順位を高く設定するようにしてある請求項2乃至4のいずれか一項に記載の装置。
  6.  アプリケーションがデータ連携された場合に、連携元のアプリケーションの出力パラメータに付与されたメタ情報及び/又は連携先のアプリケーションの入力パラメータに付与されたメタ情報を記憶するステップと、
     連携先のアプリケーションが他のアプリケーションと連携しているか否かを判断するステップと、
     連携していると判断した場合、前記他のアプリケーションの出力パラメータ又は前記連携先のアプリケーションの入力パラメータの一方にのみメタ情報が付与されているか否かを判断するステップと、
     一方にのみ付与されていると判断した場合、付与されている一方のメタ情報を付与されていない他方のメタ情報として付与するステップと、
     前記他方のメタ情報として付与されたメタ情報と、前記連携元のアプリケーションの出力パラメータ又は前記連携先のアプリケーションの入力パラメータに付与されたメタ情報とが一致するか否かを判断するステップと、
     一致すると判断されたアプリケーションを連携するステップと
     を含む方法。
  7.  複数のアプリケーション間でのデータ連携を支援するコンピュータで実行することが可能なコンピュータプログラムにおいて、
     前記コンピュータを、
     アプリケーションがデータ連携された場合に、連携元のアプリケーションの出力パラメータに付与されたメタ情報及び/又は連携先のアプリケーションの入力パラメータに付与されたメタ情報を記憶するメタ情報記憶手段、
     連携先のアプリケーションが他のアプリケーションと連携しているか否かを判断する連携判断手段、
     該連携判断手段で連携していると判断した場合、前記他のアプリケーションの出力パラメータ又は前記連携先のアプリケーションの入力パラメータの一方にのみメタ情報が付与されているか否かを判断するメタ情報判断手段、
     該メタ情報判断手段で一方にのみ付与されていると判断した場合、付与されている一方のメタ情報を付与されていない他方のメタ情報として付与するメタ情報付与手段、
     該メタ情報付与手段で前記他方のメタ情報として付与されたメタ情報と、前記連携元のアプリケーションの出力パラメータ又は前記連携先のアプリケーションの入力パラメータに付与されたメタ情報とが一致するか否かを判断する判断手段、及び
     該判断手段で一致すると判断されたアプリケーションを連携する連携手段
     として機能させるコンピュータプログラム。
  8.  前記コンピュータを、
     前記メタ情報付与手段で付与されたメタ情報に重み付け係数を付与する重み付け手段として機能させる請求項7記載のコンピュータプログラム。
  9.  前記重み付け係数は、間接的に推定されて付与されたメタ情報であるほど値が小さくなるようにしてある請求項8記載のコンピュータプログラム。
  10.  前記コンピュータを、
     前記重み付け係数に基づいて、メタ情報を付与する優先順位を設定する優先順位設定手段、
     アプリケーションの連携の指定を受け付ける連携指定受付手段、及び
     該連携指定受付手段で連携元のアプリケーションの指定を受け付けた場合、連携することが可能な連携先アプリケーションを、設定した優先順位の高い順に一覧表示する候補アプリケーション表示手段
     として機能させる請求項8又は9記載のコンピュータプログラム。
  11.  前記優先順位設定手段を、
     連携元のアプリケーションの出力パラメータに付与されたメタ情報の重み付け係数と、連携先のアプリケーションの入力パラメータに付与されたメタ情報の重み付け係数とを加算する手段、及び
     加算値の大きい順に優先順位を高く設定する手段
     として機能させる請求項8乃至10のいずれか一項に記載のコンピュータプログラム。
PCT/JP2010/050159 2009-01-15 2010-01-08 複数のアプリケーション間でのデータ連携を支援する装置、方法及びコンピュータプログラム WO2010082538A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2010546615A JP5278918B2 (ja) 2009-01-15 2010-01-08 複数のアプリケーション間でのデータ連携を支援する装置、方法及びコンピュータプログラム
CN201080003886.5A CN102272727B (zh) 2009-01-15 2010-01-08 用于支援多个应用程序间的数据连接的装置和方法
EP10731207A EP2381364A4 (en) 2009-01-15 2010-01-08 DEVICE, METHOD AND COMPUTER PROGRAM FOR SUPPORTING A DATA CONNECTION BETWEEN SEVERAL APPLICATIONS

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-006204 2009-01-15
JP2009006204 2009-01-15

Publications (1)

Publication Number Publication Date
WO2010082538A1 true WO2010082538A1 (ja) 2010-07-22

Family

ID=42339791

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/050159 WO2010082538A1 (ja) 2009-01-15 2010-01-08 複数のアプリケーション間でのデータ連携を支援する装置、方法及びコンピュータプログラム

Country Status (6)

Country Link
EP (1) EP2381364A4 (ja)
JP (1) JP5278918B2 (ja)
KR (1) KR20110110788A (ja)
CN (1) CN102272727B (ja)
TW (1) TW201032136A (ja)
WO (1) WO2010082538A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012088860A (ja) * 2010-10-18 2012-05-10 Ntt Docomo Inc サービス提供システム及びサービス提供方法
WO2012114889A1 (ja) * 2011-02-23 2012-08-30 日本電気株式会社 アプリケーション構築配置システム、アプリケーション構築配置方法、およびプログラム

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6339312B2 (ja) * 2012-06-28 2018-06-06 株式会社ファインデックス アプリケーション連携システム、アプリケーション連携方法及びアプリケーション連携プログラム
KR20140116682A (ko) * 2013-03-25 2014-10-06 (주)아펙스씨앤에스 컨텐츠 공유 방법
US20140317169A1 (en) * 2013-04-19 2014-10-23 Navteq B.V. Method, apparatus, and computer program product for server side data mashups specification

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004334556A (ja) * 2003-05-08 2004-11-25 Nippon Telegr & Teleph Corp <Ntt> コンテンツ自動連携システム、コンテンツ登録方法及びコンテンツ連携方法
JP2006190008A (ja) * 2005-01-04 2006-07-20 Nippon Telegr & Teleph Corp <Ntt> データ連携装置及びデータ連携方法
JP2006260528A (ja) * 2005-02-18 2006-09-28 Hitachi Ltd 計算機制御方法および管理計算機並びにその処理プログラム
JP2008210227A (ja) * 2007-02-27 2008-09-11 Nippon Telegr & Teleph Corp <Ntt> サービス連結情報生成システム、方法、及びプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69628798T2 (de) * 1995-10-16 2004-04-29 Hitachi, Ltd. Verfahren zur Übertragung von Multimediadaten
JP5100954B2 (ja) * 2003-06-13 2012-12-19 ソニー株式会社 コンテンツ提供方法および検索装置
EP1647894A3 (en) * 2004-10-12 2007-11-21 NEC Electronics Corporation Information processing apparatus with parallel DMA processes
JP2008293152A (ja) * 2007-05-23 2008-12-04 Hitachi Ltd Webシステムの連携方法および装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004334556A (ja) * 2003-05-08 2004-11-25 Nippon Telegr & Teleph Corp <Ntt> コンテンツ自動連携システム、コンテンツ登録方法及びコンテンツ連携方法
JP2006190008A (ja) * 2005-01-04 2006-07-20 Nippon Telegr & Teleph Corp <Ntt> データ連携装置及びデータ連携方法
JP2006260528A (ja) * 2005-02-18 2006-09-28 Hitachi Ltd 計算機制御方法および管理計算機並びにその処理プログラム
JP2008210227A (ja) * 2007-02-27 2008-09-11 Nippon Telegr & Teleph Corp <Ntt> サービス連結情報生成システム、方法、及びプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2381364A4 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012088860A (ja) * 2010-10-18 2012-05-10 Ntt Docomo Inc サービス提供システム及びサービス提供方法
WO2012114889A1 (ja) * 2011-02-23 2012-08-30 日本電気株式会社 アプリケーション構築配置システム、アプリケーション構築配置方法、およびプログラム

Also Published As

Publication number Publication date
KR20110110788A (ko) 2011-10-07
JPWO2010082538A1 (ja) 2012-07-05
EP2381364A4 (en) 2012-01-04
CN102272727B (zh) 2014-04-16
JP5278918B2 (ja) 2013-09-04
EP2381364A1 (en) 2011-10-26
CN102272727A (zh) 2011-12-07
TW201032136A (en) 2010-09-01

Similar Documents

Publication Publication Date Title
JP5425140B2 (ja) サーチ結果を提供するためのシステムおよび方法
US20120124126A1 (en) Contextual and task focused computing
JP2006318373A (ja) タスク選択支援サーバ、及び、タスク選択支援方法
JP5278918B2 (ja) 複数のアプリケーション間でのデータ連携を支援する装置、方法及びコンピュータプログラム
JP2011520201A (ja) モバイル・コンピューティング装置に対する検索結果の提供
WO2008137510A1 (en) Tag-sharing and tag-sharing application program interface
US9614790B2 (en) Apparatus for controlling execution of software, method for controlling thereof, and computer-readable recording medium having computer program for controlling thereof
CN102750081A (zh) 信息处理设备、信息处理方法和程序
WO2014117241A1 (en) Data retrieval by way of context-sensitive icons
JP2009020865A (ja) 文字入力支援方法、文字入力支援システム、文字入力支援プログラム、ユーザ端末、文字変換方法及び文字変換プログラム
Khezrian et al. An approach for web service selection based on confidence level of decision maker
EP2399203A2 (en) Identifying object using generative model
KR102004145B1 (ko) 콘텐츠 추천 방법 및 장치
WO2013108628A1 (ja) 情報管理装置、情報管理方法およびプログラム
JP6038232B2 (ja) 効率的なメール検索のためのメールサービスシステムおよび方法
JP4181196B2 (ja) 検索システム、検索方法、および情報管理装置
JP2014085994A (ja) ライセンス管理装置、ライセンス管理システム、及びライセンス管理方法
JP6515736B2 (ja) 情報処理装置及び情報処理プログラム
Makripoulias et al. Towards ubiquitous computing with quality of web service support
JP5963313B2 (ja) 情報処理装置、方法、及び、プログラム
JP2007317120A (ja) スケジュールプラン生成装置、スケジュールプラン生成方法およびスケジュールプラン生成プログラム
JP2014081875A (ja) 情報処理装置及びプログラム
JP2009129218A (ja) 書籍情報提供システム及び書籍情報提供方法
US10547579B2 (en) System, client apparatus, server apparatus, information processing method, and computer-readable storage medium for email transmission
Libby et al. Building the Catalog

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201080003886.5

Country of ref document: CN

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

Ref document number: 10731207

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2010546615

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2010731207

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 20117018243

Country of ref document: KR

Kind code of ref document: A