# US 2013/0159767 A1 · Client selectable server-side error resolution

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2013/0159767 A1
- Document ID: US20130159767A1
- Status: Published application
- Kind: A1
- Application number: 13/693,438
- Filed: 2012-12-04
- Published: 2013-06-20
- Earliest claimed: 2011-12-20
- Assignees: International Business Machines Corporation
- Inventors: John Camelon; Evan Hughes
- Web page: https://patentgrep.com/patent/US20130159767A1

## CPC

- G06F 11/0709: {in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems}
- G06F 11/0793: {Remedial or corrective actions (recovery from an exception in an instruction pipeline G06F9/3861; by retry G06F11/1402; for recovering from a failure of a protocol instance or entity H04L69/40)}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

An illustrative embodiment of a computer-implemented process for client selectable server-side data error resolutions receives a request from a client to perform an action on a server, identifies a data error during performance of the action of the request and generates a response including an error description and a resolution subset for the identified error. The computer-implemented process further sends a response to the client, receives a selected resolution returned from the client, and responsive to a determination the selected resolution associated with the token returned executes on the server, executes the selected resolution, associated with the token returned, on the server to correct the data error.

## Claims

### Claim 1

A computer-implemented process for client selectable server-side data error resolutions, the computer-implemented process comprising:
receiving a request from a client to perform an action on a server;
identifying a data error during performance of the action of the request;
generating a resolution subset of one or more resolutions for the error from a set of candidate resolutions;
generating a token for each of the one or more resolutions in the resolution subset for the error;
generating a response including an error description and the resolution subset for the identified error, sending the response to the client;
receiving a token for the selected resolution from the client;
determining whether the selected resolution associated with the token returned executes on the server; and
responsive to a determination the selected resolution associated with the token returned executes on the server, executing the selected resolution, associated with the token returned, on the server to correct the data error.

### Claim 2 (depends on 1)

The computer-implemented process of claim 1 wherein identifying a data error during performance of the action of the request further comprises:
identifying the data error related to data associated with the action of the request, wherein identification includes information comprising a type, category, identifier and resource indicator comprising one or more of an operation identifier and object used to distinguish an error from among a set of possible errors.

### Claim 3 (depends on 1)

The computer-implemented process of claim 1 wherein generating a response including an error description and the resolution subset for the identified error further comprises:
defining a resolution in the resolution subset comprising a portion including a human readable resolution description and zero or more local actions for the client to perform before or after the resolution is executed portion; and
generating a token for instructing a server to execute an associated resolution, wherein the token is error independent.

### Claim 4 (depends on 1)

The computer-implemented process of claim 1 further comprising:
responsive to a determination the selected resolution associated with the token returned requires action on the client, sending the response representative of a set of actions for executing the selected resolution to the client, whereby data on the client is one of synchronized with corresponding data on the server and updated independent of corresponding data on the server.

### Claim 5 (depends on 1)

The computer-implemented process of claim 1 wherein the resolution further comprises:
a set of actions to be completed on a set of resources associated with the data of the data error, wherein a set comprises one or more elements including parameters for execution.

### Claim 6 (depends on 1)

The computer-implemented process of claim 1 wherein the resolution further comprises:
determining whether the selected resolution associated with the token returned requires action on the client; and
responsive to a determination the selected resolution associated with the token returned does not require action on the client, sending a response representative of a result of executing the selected resolution to the client

### Claim 7 (depends on 6)

The computer-implemented process of claim 6 wherein sending a response representative of a result of executing the selected resolution to the client further comprises:
including information indicative of success or failure of the selected resolution in terms of correcting the identified error and a set of actions for the client to perform on the client, wherein the set of actions comprises zero or more actions.

### Claim 8

A computer program product for client selectable server-side data error resolutions, the computer program product comprising:
a computer recordable-type media containing computer executable program code stored thereon, the computer executable program code comprising:
computer executable program code for receiving a request from a client to perform an action on a server;
computer executable program code for identifying a data error during performance of the action of the request;
computer executable program code for generating a resolution subset of more or more resolutions from a set of candidate resolutions;
computer executable program code for generating a token for each of the one or more resolutions in the resolution subset for the error;
computer executable program code for generating a response including an error description and the resolution subset for the identified error;
computer executable program code for sending the response to the client;
computer executable program code for receiving a token for the selected resolution returned from the client;
computer executable program code for determining whether the selected resolution associated with the token returned executes on the server;
computer executable program code responsive to a determination the selected resolution associated with the token returned executes on the server, for executing the selected resolution, associated with the token returned, on the server to correct the data error;

### Claim 9 (depends on 8)

The computer program product of claim 8 wherein computer executable program code for identifying a data error during performance of the action of the request further comprises:
computer executable program code for identifying the data error related to data associated with the action of the request, wherein identification includes information comprising a type, category, identifier and resource indicator comprising one or more of an operation identifier and object used to distinguish an error from among a set of possible errors.

### Claim 10 (depends on 8)

The computer program product of claim 8 wherein computer executable program code for generating a response including an error description and the resolution subset for the identified error further comprises:
computer executable program code for defining a resolution in the resolution subset comprising a portion including a human readable resolution description and zero or more local actions for the client to perform before or after the resolution is executed portion; and
computer executable program code for generating a token for instructing a server to execute an associated resolution, wherein the token is error independent.

### Claim 11 (depends on 8)

The computer program product of claim 8 further comprising;
computer executable program code responsive to a determination the selected resolution associated with the token returned requires action on the client, for sending the response representative of a set of actions for executing the selected resolution to the client, whereby data on the client is one of synchronized with corresponding data on the server and updated independent of corresponding data on the server.

### Claim 12 (depends on 8)

The computer program product of claim 8 wherein the resolution further comprises:
a set of actions to be completed on a set of resources associated with the data of the data error, wherein a set comprises one or more elements including parameters for execution.

### Claim 13 (depends on 8)

The computer program product of claim 8 wherein the resolution further comprises:
computer executable program code for determining whether the selected resolution associated with the token returned requires action on the client; and
computer executable program code responsive to a determination the selected resolution associated with the token returned does not require action on the client, for sending a response representative of a result of executing the selected resolution to the client.

### Claim 14 (depends on 13)

The computer program product of claim 13 wherein computer executable program code for sending a response representative of a result of executing the selected resolution to the client further comprises:
computer executable program code for including information indicative of success or failure of the selected resolution in terms of correcting the identified error and a set of actions for the client to perform on the client, wherein the set of actions comprises zero or more actions.

### Claim 15

An apparatus for client selectable server-side data error resolutions, the apparatus comprising:
a communications fabric;
a memory connected to the communications fabric, wherein the memory contains computer executable program code;
a communications unit connected to the communications fabric;
an input/output unit connected to the communications fabric;
a display connected to the communications fabric; and
a processor unit connected to the communications fabric, wherein the processor unit executes the computer executable program code to direct the apparatus to:
receive a request from a client to perform an action on a server;
identify a data error during performance of the action of the request;
generate a resolution subset of one or more resolutions for the error from a set of candidate resolutions;
generate a token for each of the one or more resolutions in the resolution subset for the error;
generate a response including an error description and the resolution subset for the identified error;
send the response to the client;
receive a token for the selected resolution from the client;
determine whether the selected resolution associated with the token returned executes on the server; and
responsive to a determination the selected resolution associated with the token returned executes on the server, execute the selected resolution, associated with the token returned, on the server to correct the data error.

### Claim 16 (depends on 15)

The apparatus of claim 15 wherein the processor unit executes the computer executable program code to identify a data error during performance of the action of the request further directs the apparatus to:
identify the data error related to data associated with the action of the request, wherein identification includes information comprising a type, category, identifier and resource indicator comprising one or more of an operation identifier and object used to distinguish an error from among a set of possible errors.

### Claim 17 (depends on 15)

The apparatus of claim 15 wherein the processor unit executes the computer executable program code to generate a response including an error description and the resolution subset for the identified error further directs the apparatus to:
define a resolution in the resolution subset comprising a portion including a human readable resolution description and zero or more local actions for the client to perform before or after the resolution is executed portion; and
generate a token for instructing a server to execute an associated resolution, wherein the token is error independent.

### Claim 18 (depends on 15)

The apparatus of claim 15 wherein the processor unit executes the computer executable program code to further direct the apparatus to:
responsive to a determination the selected resolution associated with the token returned requires action on the client, send the response representative of a set of actions for executing the selected resolution to the client, whereby data on the client is one of synchronized with corresponding data on the server and updated independent of corresponding data on the server.

### Claim 19 (depends on 15)

The apparatus of claim 15 wherein the processor unit executes the computer executable program code to further direct the apparatus to:
determine whether the selected resolution associated with the token returned requires action on the client; and
responsive to a determination the selected resolution associated with the token returned does not require action on the client, send a response representative of a result of executing the selected resolution to the client.

### Claim 20 (depends on 19)

The apparatus of claim 19 wherein the processor unit executes the computer executable program code to send a response representative of a result of executing the selected resolution to the client further direct the apparatus to:
include information indicative of success or failure of the selected resolution in terms of correcting the identified error and a set of actions for the client to perform on the client, wherein the set of actions comprises zero or more actions.
