Systems and methods for creating web service compositions

US9319283B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9319283-B2
Application numberUS-201213405416-A
CountryUS
Kind codeB2
Filing dateFeb 27, 2012
Priority dateFeb 27, 2012
Publication dateApr 19, 2016
Grant dateApr 19, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Exemplary embodiments provide systems and methods for connecting services, including web services, using intermediate data exchange objects to create composition services. Data exchange objects may be service independent objects that represent the inputs and/or outputs of various services. The systems and methods may employ data exchange objects to determine whether two services are composable and to implement and execute composite services according to the data exchange objects.

First claim

Opening claim text (preview).

What is claimed is: 1. A method, implemented using a computing system, for composing compound services, the method comprising: creating, using an electronic processor, a first definition of a first service, the first service including a first interface object, wherein the first definition of the first service is service independent and comprises a pseudocode representation; creating, using an electronic processor, a data exchange object that represents the first interface object of the first service, wherein the data exchange object comprises a pseudocode representation; creating, using an electronic processor, an association between the first interface object of the first service with the data exchange object, wherein creating the association between the first interface object of the first service with the data exchange object comprises creating the association when the first interface object of the first service is syntactically compatible with the data exchange object and is semantically compatible with the data exchange object; storing, using an electronic processor, the data exchange object, wherein the storing the data exchange object comprises storing the association between the first interface object of the first service with the data exchange object as part of the data exchange object itself; creating, using an electronic processor, a second definition of a second service, the second service including a second interface object, wherein the second definition of the second service comprises a pseudocode representation; determining, using an electronic processor, that the second interface object associates to the data exchange object; connecting, using an electronic processor, the second service to the first service through the data exchange object, wherein an output of the first service connects to an input of the data exchange object, and wherein an output of the data exchange object connects to an input of the second service; storing, using an electronic processor, the first definition; providing, using an electronic processor, to a user, access to the first definition, the data exchange object, and the association; receiving a user request to identify data exchange objects that are associated with a service, including data that identifies the first service; and identifying the data exchange object in response to the request. 2. The method of claim 1 , further comprising: indicating, to the user, that the second service is connectable to the first service. 3. The method of claim 1 , further comprising: receiving a request to identify services that are associated with a data exchange object, including data that identifies a first data exchange object; and identifying the first service in response to the request. 4. A system for composing compound services, the system comprising: a memory containing instructions; and a processor, operably connected to the memory, that executes the instructions to perform operations comprising: creating a first definition of a first service, the first service including a first interface object, wherein the first definition of the first service is service independent and comprises a pseudocode representation, creating a data exchange object that represents the first interface object of the first service, wherein the data exchange object comprises a pseudocode representation, creating an association between the first interface object of the first service with the data exchange object, wherein creating the association between the first interface object of the first service with the data exchange object comprises creating the association when the first interface object of the first service is syntactically compatible with the data exchange object and is semantically compatible with the data exchange object; storing, using an electronic processor, the data exchange object, wherein the storing the data exchange object comprises storing the association between the first interface object of the first service with the data exchange object as part of the data exchange object itself; creating a second definition of a second service, the second service including a second interface object, wherein the second definition of the second service comprises a pseudocode representation, determining that the second interface object associates to the data exchange object, connecting the second service to the first service through the data exchange object, wherein an output of the first service connects to an input of the data exchange object, and wherein an output of the data exchange object connects to an input of the second service, storing the first definition, providing, to a user, access to the first definition, the data exchange object, and the association; receiving a user request to identify data exchange objects that are associated with a service, including data that identifies the first service; and identifying the data exchange object in response to the request. 5. The system of claim 4 , the operations further comprising: indicating, to the user, that the second service is connectable to the first service. 6. The system of claim 4 , the operations further comprising: receiving a request to identify services that are associated with a data exchange object, including data that identifies a first data exchange object; and identifying the first service in response to the request. 7. A non-transitory computer-readable medium containing instructions that when executed implement a method comprising: creating a first definition of a first service, the first service including a first interface object, wherein the first definition of the first service is service independent and comprises a pseudocode representation; creating a data exchange object that represents the first interface object of the first service, wherein the data exchange object comprises a pseudocode representation; creating an association between the first interface object of the first service with the data exchange object; wherein creating the association between the first interface object of the first service with the data exchange object comprises creating the association when the first interface object of the first service is syntactically compatible with the data exchange object and is semantically compatible with the data exchange object; storing, using an electronic processor, the data exchange object, wherein the storing the data exchange object comprises storing the association between the first interface object of the first service with the data exchange object as part of the data exchange object itself; creating a second definition of a second service, the second service including a second interface object; determining that the second interface object associates to the data exchange object; connecting the second service to the first service through the data exchange object, wherein an output of the first service connects to an input of the data exchange object, and wherein an output of the data exchange object connects to an input of the second service; storing the first definition; providing, to a user, access to the first definition, the data exchange object, and the association; receiving a user request to identify data exchange objects that are associated with a service, including data that identifies the first service; and identifying the data exchange object in response to the request. 8. The non-transitory computer-readable medium of claim 7 , further comprising instructions for: indicating, to the user, that the second service is connectable to the first service. 9. The non-transitory computer-readable medium of claim 7 , further comprising instructions for: receiving a reques

Assignees

Inventors

Classifications

  • wherein the managed service relates to web hosting · CPC title

  • Making service definitions prior to deployment · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9319283B2 cover?
Exemplary embodiments provide systems and methods for connecting services, including web services, using intermediate data exchange objects to create composition services. Data exchange objects may be service independent objects that represent the inputs and/or outputs of various services. The systems and methods may employ data exchange objects to determine whether two services are composable …
Who is the assignee on this patent?
Ponnavaikko Kovendhan, Morales Ramsés V, Xerox Corp
What technology area does this patent fall under?
Primary CPC classification H04L41/5083. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Apr 19 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).