# US 12,217,070 B2 · Method and apparatus for user interface modification

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

- Number: US 12,217,070 B2
- Document ID: US12217070B2
- Status: Granted
- Kind: B2
- Application number: 18/355,354
- Filed: 2023-07-19
- Published: 2023-12-07
- Granted: 2025-02-04
- Earliest claimed: 2016-07-15
- Assignees: Versata FZ-LLC
- Applicants: Versata FZ-LLC
- Inventors: Plamen Ivanov Valtchev
- Web page: https://patentgrep.com/patent/US12217070B2

## CPC

- G06F 9/451: Execution arrangements for user interfaces
- G06F 8/34: Graphical or visual programming
- G06F 8/38: for implementing user interfaces
- G06F 40/14: Tree-structured documents (parsing G06F40/205; validation G06F40/226)
- G06F 3/0481: based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F 3/04812: Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
- G06F 3/04847: Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
- G06F 16/986: {Document structures and storage, e.g. HTML extensions}
- G06F 40/103: Formatting, i.e. changing of presentation of documents (automatic justification G06F40/189; automatic line break hyphenation G06F40/191)
- G06F 40/143: Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
- G06F 40/166: Editing, e.g. inserting or deleting
- H04N 1/00501: {Tailoring a user interface [UI] to specific requirements}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A method and apparatus for modifying a user interface. The method comprises receiving user interface data at a client from a first server, receiving modification computer program code at said client, and executing said modification computer program code at said client to modify said user interface data to generate modified user interface data. The modification computer program code can be received from said first server or from a further server.

## Claims

### Claim 1

A system of modifying input computer program code, the method comprising:
one or more processors included in a computer system; and
a memory, coupled to the one or more processors, having code to modify input computer program code, wherein when the code is executed by the one or more processors, the computer system performs operations comprising:
processing the input computer code to identify first computer program code;
replacing the identified first computer program code with second computer program code and third computer program code, wherein:
the second computer program code includes a commented portion, wherein the commented portion is at least prefixed by one or more comment identifying characters that when present prevents execution of the commented portion of the second computer program code when the input computer program code is executing;
the commented portion of the second computer program code comprises executable code; and
the third computer program code includes instructions to identify the second computer program code and process the commented portion of the second computer program code by at least removing the one or more comment identifying characters to allow execution of the commented portion of the second computer program code;
executing the third computer program code when the input computer program code is executed to modify the second program code by removing the one or more comment identifying characters such that the second computer program code is configured to be executed; and
after execution of the third computer program code, executing the commented portion of the second computer program code with the one or more comment identifying characters removed to modify the input computer program code.

### Claim 2 (depends on 1)

The system according to claim 1, wherein the first, second and third computer program code are defined in a common programming language.

### Claim 3 (depends on 1)

The system according to claim 1, wherein the second computer program code comprises a script.

### Claim 4 (depends on 2)

The system according to claim 2, wherein the second computer program code comprises the first computer program code.

### Claim 5 (depends on 3)

The system according to claim 3, wherein the third computer program code is configured to modify the first computer program code comprised within the second computer program code prior to execution.

### Claim 6 (depends on 4)

The system according to claim 4, wherein the processing and the replacing are carried out at a server, and when the code is executed, the processor further performs an operations comprising:
transmitting processed computer program code to a client.

### Claim 7 (depends on 5)

The system according to claim 5, wherein the client is configured to execute the third computer program code.

### Claim 8 (depends on 6)

The system according to claim 6, wherein the first computer program code comprises a plurality of instructions enclosed between predetermined tag instructions.

### Claim 9 (depends on 7)

The system according to claim 7, wherein the second computer program code comprises commented code corresponding to the first computer program code.

### Claim 10 (depends on 8)

The system according to claim 8, wherein the commented portion of the second computer program code includes at least two comment identifying characters to prefix and suffix the commented portion, and the third computer program code is further configured to process the commented portion of the second computer program code to modify the executable code enclosed within the at least two comment identifying characters.

### Claim 11 (depends on 9)

The system according to claim 9, wherein the executable code enclosed within the commented portion includes at least one instruction including a reference to a location, and the third computer program code is configured to modify the location.

### Claim 12

A system comprising:
one or more processors included in a computer system; and
a memory, coupled to the one or more processors, having code to modify input computer program code, wherein when the code is executed by the one or more processors, the computer system performs operations comprising:
processing the computer program code to identify first computer program code and second computer program code, wherein:
the first computer program code includes a commented portion, wherein the commented portion is at least prefixed by one or more comment identifying characters that when present prevents execution of the commented portion of the first computer program code when the input computer program code is executing;
the commented portion of the first computer program code comprises executable code; and
the second computer program code includes instructions to identify the first computer program code and process the commented portion of the first computer program code by at least removing the one or more comment identifying characters to allow exec not executing the first computer program code;
executing the second computer program code to remove the one or more comment identifying characters to modify the first program code such that the commented portion of the first computer program code with the one or more comment identifying characters removed is configured to be executed.

### Claim 13 (depends on 12)

The system according to claim 12, wherein the first and second computer program code are defined in a common programming language.

### Claim 14 (depends on 13)

The system according to claim 13, wherein the first computer program code comprises a script.

### Claim 15 (depends on 14)

The system according to claim 14, wherein the third computer program code comprises the second computer program code.

### Claim 16 (depends on 12)

The system according to claim 12, wherein the computer program code to be executed is received from a server.

### Claim 17 (depends on 16)

The system according to claim 16, wherein the first computer program code comprises a plurality of instructions enclosed between predetermined tag instructions.

### Claim 18 (depends on 17)

The system according to claim 17, wherein the second computer program code comprises commented code corresponding to the first computer program code.

### Claim 19 (depends on 18)

The system according to claim 18, wherein the commented portion of the first computer program code includes at least two comment identifying characters to prefix and suffix the commented portion, and the second computer program code is further configured to process the commented portion of the first computer program code to modify the executable code enclosed within the at least two comment identifying characters.

### Claim 20 (depends on 19)

The system according to claim 19, wherein the executable code enclosed within the commented portion includes at least one instruction including a reference to a location, and the second computer program code is configured to modify the location.
