EP1569418A1

An apparatus and method for aggregating web services

Abstract

An apparatus and method for aggregating web services in generating a user interface for a computing device. Web service descriptions are received that define a web service interface to each of a plurality of web services. The web service descriptions are processed to identify inputs to first web services obtainable by invoking one or more second web services. A user interface is generated for the computing device that aggregates these first and second web services. By identifying instances in which the input to one web service may be obtained by invoking another web service, a user interface which aggregates these web services may be automatically generated.

EP1569418A1, drawing sheet 1
Sheet 1 of 8

Term

Term ended

Projected expiry passed 26 February 2024, 2.6 years ago.

  1. Priority and filed
  2. Published
  3. Projected expiry
  4. Today

17 claims: 10 independent, 7 dependent

  1. 1
    A method of aggregating web services in generating a user interface for a computing device, the method comprising the steps of:a) receiving at least one web service description, wherein said at least one web service description comprises a plurality of web service description elements that define a web service interface to each of a plurality of web services;b) processing said at least one web service description to identify a first web service requiring one or more inputs, wherein each input to said first web service is obtainable by invoking a second web service of said plurality of web services;andc) generating a user interface for said computing device adapted to perform the substeps of i. invoking one or more second web services to obtain output data from said one or more second web services;andii. invoking said first web service, using output data from said second web services as input data to said first web service, to obtain output data from said first web service.
  2. 3
    The method of either one of claims 1 or 2, wherein said generating step comprises generating code for said user interface, and wherein said method further comprises storing said code in a storage device.
  3. 5
    The method of either one of claims 3 or 4, further comprising executing said code on said computing device.
  4. 6
    The method of any one of the preceding claims, wherein said user interface generated at step c) is further adapted to prompt at least one user for input data and receive said input data from said at least one user.
  5. 8
    The method of any one of the preceding claims, wherein steps b) and c) are repeated for a plurality of first web services.
  6. 9
    The method of any one of the preceding claims, wherein said web service description elements contain names associated with said one or more second web services and names associated with inputs to said first web service that adhere to a predetermined naming convention, wherein said naming convention permits a determination of whether an input to said first web service is obtainable by invoking a specified second web service at said processing step.
  7. 10
    The method of any one of the preceding claims, wherein step b) comprises:generating one or more second user interfaces through which input data is obtainable from at least one user and output data is displayable to said at least one user;invoking at least a subset of said plurality of web services using input data obtained from said at least one user through said one or more second user interfaces, and displaying output data through said one or more second user interfaces from said at least a subset of said plurality of web services to said at least one user;andidentifying said first and second web services, from input data obtained from said at least one user and output data displayed to said at least one user through said one or more second user interfaces.
  8. 13
    The method of any one of the preceding claims, wherein step b) comprises:generating one or more second user interfaces for permitting at least one user to identify said first and second web services by displaying names of at least a subset of said plurality of web services in said one or more second user interfaces, and receiving input data from said at least one user indicating which second web services of said at least a subset of said plurality of web services has been associated with said first web service by said at least one user.
  9. 15
    An apparatus programmed to perform a method of aggregating web services in generating a user interface for a computing device, comprising:a) means for receiving at least one web service description, wherein said at least one web service description comprises a plurality of web service description elements that define a web service interface to each of a plurality of web services;b) means for processing said at least one web service description to identify a first web service requiring one or more inputs, wherein each input to said first web service is obtainable by invoking a second web service of said plurality of web services;andc) means for generating a user interface for said computing device adapted to i. invoke one or more second web services to obtain output data from said one or more second web services;andii. invoke said first web service, using output data from said second web services as input data to said first web service, to obtain output data from said first web service.
  10. 17
    A computer-readable medium upon which a set of software components is stored, the software components containing instructions for performing the steps in a method of aggregating web services in generating a user interface for a computing device, the instructions for:a) receiving at least one web service description, wherein said at least one web service description comprises a plurality of web service description elements that define a web service interface to each of a plurality of web services;b) processing said at least one web service description to identify a first web service requiring one or more inputs, wherein each input to said first web service is obtainable by invoking a second web service of said plurality of web services;andc) generating a user interface for said computing device adapted to perform the substeps of i. invoking one or more second web services to obtain output data from said one or more second web services;andii. invoking said first web service, using output data from said second web services as input data to said first web service, to obtain output data from said first web service.