IP Library Granted Patent US 7,747,590
Granted Patent B2
US 7,747,590 · App. 11/848,810 · Granted Jun 29, 2010

Avoiding redundant computation in service-oriented architectures

Assignee: International Business Machines Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,747,590
App. No.
11/848,810
Granted
Jun 29, 2010
Kind
B2
Abstract

A request for a software service utilizes a service intermediary. The service intermediary 1) checks the request to confirm that it conforms to XML well-formedness, and 2) validates the schema of the request. If the request passes both tests, then flags are appended to the request, which is sent to a service provider. The flag indicates to the service provider that the request has already been checked and validated, such that the service provider only needs to provide the requested service, without redundantly checking and validating the request.

Claims (32)

1. A method for processing a software service request, the method comprising:

receiving, at a service intermediary, a software service request from a software service requester, wherein the software service request is an Extensible Markup Language (XML) document that is requesting a software service from a service provider;

checking, at the service intermediary, the software service request for well-formedness, wherein checking for well-formedness confirms that the software service request follows construct requirements of XML;

validating, at the service intermediary, a schema of the software service request, wherein validating the schema confirms that the XML document follows protocols set for a particular type of request for a particular software service;

in response to the service intermediary confirming that the XML document is well-formed and follows a proper schema for requesting the particular software service, augmenting the software service request with flags to create an augmented software service request, wherein the flags indicate that the XML document has passed the checking and validating steps;

transmitting the augmented software service request from the service intermediary to a service provider;

reading the flags at the service provider, wherein the flags indicate to the service provider that the augmented software service request has passed the checking and validating steps; and

transmitting the requested software service from the service provider to the software service requester, wherein the service provider does not redundantly perform the checking and validating steps that have been performed by the service intermediary;

wherein the construct requirements of XML comprise XML command formats and XML punctuation requirements, and wherein the schema comprises 1) a requirement that a tag contain only letters; 2) definitions of tag variables; and 3) naming conventions for the particular software service that has been requested.

2. A computer program product for processing a software service request, the computer program product comprising:

a computer usable storage medium having computer usable program code stored thereon, the computer usable program code comprising:

computer usable program code configured for receiving, at a service intermediary, a software service request from a software service requester, wherein the software service request is an Extensible Markup Language (XML) document that is requesting a software service from a service provider;

computer usable program code configured for checking, at the service intermediary, the software service request for well-formedness, wherein checking for well-formedness confirms that the software service request follows construct requirements of XML;

computer usable program code configured for validating, at the service intermediary, a schema of the software service request, wherein validating the schema confirms that the XML document follows protocols set by a particular type of request for a particular software service;

computer usable program code configured for, in response to the service intermediary confirming that the XML document is well-formed and follows a proper schema for requesting the particular software service, augmenting the software service request with flags to create an augmented software service request, wherein the flags indicate that the XML document has passed the checking and validating steps;

computer usable program code configured for transmitting the augmented software service request from the service intermediary to a service provider;

computer usable program code configured for reading the flags at the service provider, wherein the flags indicate to the service provider that the augmented software service request has passed the checking and validating steps; and

computer usable program code configured for transmitting the requested software service from the service provider to the software service requester, wherein the service provider does not redundantly perform the checking and validating steps that have been performed by the service intermediary;

wherein the construct requirements of XML comprise XML command formats and XML punctuation requirements, and wherein the schema comprises 1) a requirement that a tag contain only letters; 2) definitions of tag variables; and 3) naming conventions for the particular software service that has been requested.

3. A system comprising:

a processor;

a data bus coupled to the processor;

a memory coupled to the data bus; and

a computer-usable medium embodying computer program code, the computer program code comprising instructions executable by the processor and configured for processing a software service request by performing the steps of:

receiving, at a service intermediary, a software service request from a software service requester, wherein the software service request is an Extensible Markup Language (XML) document that is requesting a software service from a service provider;

checking, at the service intermediary, the software service request for well-formedness, wherein checking for well-formedness confirms that the software service request follows construct requirements of XML;

validating, at the service intermediary, a schema of the software service request, wherein validating the schema confirms that the XML document follows protocols set for a particular type of request for a particular software service;

in response to the service intermediary confirming that the XML document is well-formed and follows a proper schema for requesting the particular software service, augmenting the software service request with flags to create an augmented software service request, wherein the flags indicate that the XML document has passed the checking and validating steps;

transmitting the augmented software service request from the service intermediary to a service provider;

reading the flags at the service provider, wherein the flags indicate to the service provider that the augmented software service request has passed the checking and validating steps; and

transmitting the requested software service from the service provider to the software service requester, wherein the service provider does not redundantly perform the checking and validating steps that have been performed by the service intermediary;

wherein the construct requirements of XML comprise XML command formats and XML punctuation requirements, and wherein the schema comprises 1) a requirement that a tag contain only letters; 2) definitions of tag variables; and 3) naming conventions for the particular software service that has been requested.

Assignments (3)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0334 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 12, 2012
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: SAP AG
Reel/Frame 028540/0522 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 7, 2007
From: RODRIGUEZ, ADOLFO F.; SALZ, RICHARD E.; TRUTY, GREGORY L.; VASHAW, BARTON C.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 019798/0286 →
Continuity (1)
Related Publication 20090063498A1 · Mar 5, 2009