US2002120685A1PendingUtilityA1

System for dynamically invoking remote network services using service descriptions stored in a service registry

Priority: Jun 1, 1999Filed: Apr 10, 2002Published: Aug 29, 2002
Est. expiryJun 1, 2019(expired)· nominal 20-yr term from priority
G06F 16/958Y10S707/99931G06F 16/00G06F 2209/5015Y10S707/99943G06F 9/44Y10S707/99933
43
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A dynamic services infrastructure accepts data describing data resources and stores that data in a relational database from which it may be retrieved to handle service requests issued by application programs. The database stores Service Definition data which is initially supplied in the form of XML Service Descriptor documents which are then mapped into the database from which they may be accessed. Each Service Definition includes an input specification which identifies the address of a resource as well as the nature of the input data to be supplied to the resource with the request, and further includes an output specification which describes the nature of the output information which is supplied by the resource in response to the request. The Service Definition further includes information describing the service provider which supplies the resource, test information including fixed input and output values which permit the operability of the resource to be verified, update information which permits the infrastructure to insure that the Service Definition information is kept current, and security information which permits the system to validate users and provide secure encrypted information exchanges. When a client sends a request for services to the infrastructure, obtains the service description for the desired resource from the database, transmits an output information request to the address specified in said the service description, supplying input information meeting the specification contained in said particular service description to said particular resource, and receives and routs output information provided by said particular resource in response to said output information request to the executing application program.

Claims

exact text as granted — not AI-modified
What is claimed is:  
     
         1 . A method for invoking the performance of a designated service by a service provider in response to a request from a requester sent to said service provider via a network, said method comprising, in combination, the steps of: 
 storing a description of said designated service at a location accessible to said requester, said description comprising, in combination: 
 an input description specifying the content of an acceptable input message which may be received by said service provider to initiate the performance of said designated service;  
 a designation of a unique network address to which said input message is to be sent to invoke the performance of said designated service, and  
 an output description specifying the content of each output message produced by said service provider during the performance of said designated service,  
   transmitting a request message that conforms to said input description via said network to said unique network address,    performing said designated service at said service provider in response to the receipt of said request message to generate a response conforming to said output description, and    returning said response via said network to said service consumer.    
     
     
         2 . The method set forth in  claim 1  wherein said description of said designated service is expressed in Extended Markup Language.  
     
     
         3 . The method as set forth in  claim 1  wherein said request message is expressed in Extended Markup Language.  
     
     
         4 . The method as set forth in  claim 3  wherein said request message is expressed in Extended Markup Language and wherein said method further includes the step of validating the content of said request message to verify that it conforms to said description.  
     
     
         5 . The method as set forth in  claim 1  wherein at least one of said output messages is expressed in Extended Markup Language.  
     
     
         6 . The method as set forth in  claim 1  wherein at least one of said output messages is expressed in Extended Markup Language and wherein said method further includes the step of validating said at least one output message to verify that it conforms to said description.  
     
     
         7 . The method as set forth in  claim 4  wherein at least one of said output messages is expressed in Extended Markup Language and wherein said method further includes the step of validating said at least one output message to verify that it conforms to said description.  
     
     
         8 . The method as set forth in  claim 1  wherein said output description specifying the content of each output message produced by said service provider during the performance of said designated service includes the specification of the content of at least one error message that is produced when an error condition is experienced during the performance of said designated service.  
     
     
         9 . The method as set forth in  claim 8  wherein said error message is expressed in Extended Markup Language.  
     
     
         10 . The method as set forth in  claim 9  wherein said output description specifying the content of each output message produced by said service provider during the performance of said designated service includes the specification of the content of at least one error message expressed in Extended Markup Language that is produced when an error condition is experienced during the performance of said designated service.  
     
     
         11 . The method as set forth in  claim 1  wherein said step of storing a description of said designated service comprises the steps of 
 establishing a registration database for storing a plurality of service descriptions each of which describes an available service and each of which conforms to a predetermined service description format specification, and  
 storing said designated service description in said database.  
 
     
     
         12 . The method set forth in  claim 11  further including the step of generating a listing of available services specified by said plurality of service descriptions in response to a listing request.  
     
     
         13 . A system for invoking the performance of a selected one of a plurality of diverse services via the Internet, said system comprising, in combination: 
 a database coupled to the Internet for storing a description of each of said services, each of said descriptions describing a designated service and comprising: 
 an input description specifying the content of an input message that may be received and used by said designated service to perform said designated service;  
 a designation of the unique Internet address to which said input message is to be directed to invoke the performance of said designated service, and  
 an output description specifying the content of each output message produced by the performance of said designated service,  
   first processing means at a client location for executing an application program that includes means for transmitting a request message that conforms to said input description to said Internet address, and    second processing at said Internet address for performing said designated service in response to the receipt of said request message to generate a response conforming to said output description and to return said response via the Internet to said first processing means.    
     
     
         14 . The system set forth in  claim 13  wherein each of said descriptions is expressed in Extended Markup Language in a predetermined format.  
     
     
         15 . The system as set forth in  claim 14  wherein said request message is expressed in Extended Markup Language.  
     
     
         16 . The system as set forth in  claim 15  wherein at least one of said output messages is expressed in Extended Markup Language.  
     
     
         17 . The system set forth in  claim 16  further including registration means coupled to said database for accepting new descriptions of additional services and for storing said new descriptions in said database.  
     
     
         18 . The system as set forth in  claim 17  wherein said output description includes the specification of the content of at least one error message that is produced when an error condition is experienced during the performance of said designated service.  
     
     
         19 . The system as set forth in  claim 18  further including means for verifying that said request message conforms to said input description for said designated service.  
     
     
         20 . The system as set forth in  claim 19  further including means for verifying that said response conforms to said output description for said designated service.  
     
     
         21 . The system as set forth in  claim 20  further including means coupled to said database and responsive to listing request for generating a listing of said plurality of diverse services.  
     
     
         22 . A system for performing a programmatic data exchange via the Internet between a consumer application executing on a client computer and a selected one of a plurality of different service applications, at least some of which are performed by computers located remotely from said client computer and connected to said client computer via the Internet, said system comprising, in combination, 
 a registry database coupled to the Internet, said registry database comprising, in combination: 
 registration means for storing in said registry database a service description which specifies, for each given one of said service applications: 
 the content and format of an input message which may be received and processed by said given one of said service applications;  
 the Internet address to which said input message is to be sent in order to invoke the operation of said given one of said service applications; and  
 the content and format of any output messages which are produced by the operation of said given one of said service applications;  
 
 means responsive to a listing request received from a list requester for returning a listing of said plurality of different service applications to said list requester; and  
 means responsive to a service description request received from a service description requester for returning a designated one of said service descriptions to said service requester; and  
   interface means for integrating the operation of said consumer application with said selected one of said service applications, said interface means comprising: 
 means for transmitting a listing request to said registry database and for receiving in response thereto a listing of said plurality of different service applications;  
 means for transmitting a description request to said registry database and for receiving in response thereto a description of said selected one of said service applications;  
 means for forming an input message that conforms to said selected service description,  
 means for transmitting said input message via the Internet to the Internet address specified in said selected service description; and  
 means for receiving a responsive output message via the Internet from said selected one of said service applications and for supplying data contained therein to said consumer application.  
   
     
     
         23 . The system set forth in  claim 22  wherein said each of said service descriptions is expressed in Extended Markup Language in a predetermined format.  
     
     
         24 . The system as set forth in  claim 23  wherein said input message is expressed in Extended Markup Language.  
     
     
         25 . The system as set forth in  claim 24  said output messages are expressed in Extended Markup Language.  
     
     
         26 . The system as set forth in  claim 25  wherein at least one of said output messages is an error message produced when an error condition is experienced during the performance of said given service.  
     
     
         27 . The system as set forth in  claim 25  further including means for verifying that said request message conforms to the content and format specified for an input message in the description for said given service.  
     
     
         28 . The system as set forth in  claim 26  further including means for verifying that said responsive output message conforms to the content and format specified for an output message in the description for said given service.

Join the waitlist — get patent alerts

Track US2002120685A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.