IP Library Granted Patent US 11,016,646
Granted Patent B1
US 11,016,646 · App. 15/077,184 · Granted May 25, 2021

Method and mechanism for context driven alteration of UI artifacts instances behavior using expression based pluggable UI aspects

Inventors: Sachin G. Totale (Pleasanton, CA); Samir Yasin Vaidya (Bangalore, IN)
Assignee: Open Text Corporation
G06F3/04847G06F3/0482G06F3/04842G06F8/656G06F9/451
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 11,016,646
App. No.
15/077,184
Granted
May 25, 2021
Kind
B1
Abstract

A selection of a user interface artifact from a set of one or more user interface artifacts associated with a first user interface to an enterprise content management system is received. A selection of a user interface aspect from a set of one or more user interface aspects is received. Each user interface aspect in the set of user interface aspects is capable of modifying at least one user interface artifact from the set of user interface artifact. A second user interface to the enterprise content management system is generated using the selected user interface artifact and the selected user interface aspect where the selected user interface artifact in the second user interface is implemented per the selected user interface aspect.

Claims (40)

1. A system, comprising:

a processor; and

a memory coupled with the processor, wherein the memory is configured to provide the processor with instructions which when executed cause the processor to:

execute an enterprise content management system, including retrieving from a user interface storage a first user interface to an enterprise content management system, wherein the first user interface is in a form which is capable of being executed or run and includes a set of one or more user interface artifacts, and wherein each of the one or more user interface artifacts is a part of the first user interface that defines how the first user interface behaves in response to a user's input and executing the first user interface;

ingest, for each user interface aspect included in a set of one or more user interface aspects, a list of applicable user interface artifacts that are modifiable by the user interface aspect, the list comprising XML code in an applicable to section in the executable code of the user interface aspect;

receive, by the enterprise content management system at runtime, a selection of a user interface artifact from the set of one or more user interface artifacts of the executing first user interface;

determine, for the selected user interface artifact, one or more applicable user interface aspects, including by determining which of the ingested list of applicable user interface artifacts includes the selected user interface artifact;

display the one or more applicable user interface aspects as the set of one or more user interface aspects from which the selected user interface aspect is selected;

receive, by the enterprise content management system at runtime, a selection of a user interface aspect from the set of one or more user interface aspects, wherein each user interface aspect in the set of one or more user interface aspects comprises executable XML code including a configuration section which enables input of information required for execution of the interface aspect and the applicable to section which describes user interface artifacts in the executing first user interface that the interface aspect is capable of modifying; and

at runtime, modify the executing first user interface according to the selected user interface aspect by modifying or replacing JavaScript code of the selected user interface artifact and thereby generate a modified first user interface to the enterprise content management system which is different from the first user interface, including executing the selected user interface artifact in the modified first user interface as modified by the selected user interface aspect, wherein modifying the executing first user interface according to the selected user interface aspect comprises, at runtime, determining that the selected user interface aspect is selected to modify the selected user interface artifact, and executing the code of the selected user interface aspect instead of a corresponding portion of the code of the selected user interface artifact.

2. The system recited in claim 1 , wherein the set of one or more user interface artifacts includes one or more of the following: a user interface widget, a date input widget, a text input widget, an actionable widget, an action, a user interface event, a context menu, a page fragment, an action flow, a page, or a step.

3. The system recited in claim 1 , wherein the set of one or more user interface artifacts includes a dynamic label aspect associated with changing a label associated with the selected user interface artifact.

4. The system recited in claim 1 , wherein the set of one or more user interface artifacts includes a dynamic CSS class aspect associated with changing a CSS class associated with the selected user interface artifact.

5. The system recited in claim 1 , wherein generating the modified first user interface to the enterprise content management system comprises examining each of the set of one or more user interface artifacts included in the first user interface, determining whether any of the set of one or more user interface artifacts included in the first user interface is modified by any of the set of one or more user interface aspects, and executing the set of one or more user interface artifacts included in the first user interface as modified by any of the set of one or more user interface aspects.

6. The system recited in claim 1 , wherein generating the modified first user interface to the enterprise content management system comprises enforcing in the modified first user interface one or more rules that were associated with the first user interface prior to modifying the selected user interface artifact according to the selected user interface aspect.

7. The system recited in claim 6 , wherein the modified first user interface retains at least one of the one or more user interface artifacts included in the first user interface, wherein the at least one of the one or more retained user interface artifacts is unmodified from the first user interface.

8. The system recited in claim 1 , wherein executing the code of the selected user interface aspect comprises evaluating a conditional expression at runtime, identifying the code of the selected user interface aspect based on the evaluated conditional expression, and executing the identified code.

9. A method, comprising:

executing an enterprise content management system application, including retrieving from a user interface storage a first user interface to an enterprise content management system, wherein the first user interface is in a form which is capable of being executed or run and includes a set of one or more user interface artifacts that are parts of the first user interface that define how the first user interface behaves in response to a user's input;

ingesting, for each user interface aspect included in a set of one or more user interface aspects, a list of applicable user interface artifacts that are modifiable by the user interface aspect, the list comprising XML code in an applicable to section in the executable code of the user interface aspect;

receiving at runtime a selection of a user interface artifact from the set of one or more user interface artifacts of the first user interface;

determining, for the selected user interface artifact, one or more applicable user interface aspects, including by determining which of the ingested list of applicable user interface artifacts includes the selected user interface artifact;

displaying the one or more applicable user interface aspects as the set of one or more user interface aspects from which the selected user interface aspect is selected;

receiving a selection of a user interface aspect from the set of one or more user interface aspects, wherein each user interface aspect in the set of one or more user interface aspects comprises executable XML code including a configuration section which enables input of information required for execution of the interface aspect and an applicable to section which describes user interface artifacts in the executing first user interface that the interface aspect is capable of modifying; and

using a processor to modify, at runtime, JavaScript code of the executing first user interface and thereby generate a modified first user interface to the enterprise content management system, including executing the selected user interface artifact in the modified first user interface as modified by the selected user interface aspect, wherein modifying the executing first user interface according to the selected user interface aspect comprises, at runtime, determining that the selected user interface aspect is selected to modify the selected user interface artifact, and executing the code of the selected user interface aspect instead of a corresponding portion of the code of the selected user interface artifact.

10. The method recited in claim 9 , wherein the set of one or more user interface artifacts includes one or more of the following: a user interface widget, a date input widget, a text input widget, an actionable widget, an action, a user interface event, a context menu, a page fragment, an action flow, a page, or a step.

11. The method recited in claim 9 , wherein the set of one or more user interface artifacts includes a dynamic label aspect associated with changing a label associated with the selected user interface artifact.

12. The method recited in claim 9 , wherein the set of one or more user interface artifacts includes a dynamic CSS class aspect associated with changing a CSS class associated with the selected user interface artifact.

13. A computer program product, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

executing an enterprise content management system application, including retrieving from a user interface storage a first user interface to an enterprise content management system, wherein the first user interface is in a form which is capable of being executed or run and includes a set of one or more user interface artifacts that are parts of the first user interface that define how the first user interface behaves in response to a user's input;

ingesting, for each user interface aspect included in a set of one or more user interface aspects, a list of applicable user interface artifacts that are modifiable by the user interface aspect, the list comprising XML code in an applicable to section in the executable code of the user interface aspect;

receiving at runtime a selection of a user interface artifact from the set of one or more user interface artifacts of the first user interface;

determining, for the selected user interface artifact, one or more applicable user interface aspects, including by determining which of the ingested list of applicable user interface artifacts includes the selected user interface artifact;

displaying the one or more applicable user interface aspects as the set of one or more user interface aspects from which the selected user interface aspect is selected;

receiving a selection of a user interface aspect from the set of one or more user interface aspects, wherein each user interface aspect in the set of one or more user interface aspects comprises executable XML code including a configuration section which enables input of information required for execution of the interface aspect and an applicable to section which describes user interface artifacts in the executing first user interface that the interface aspect is capable of modifying; and

at runtime, modifying JavaScript code of the executing first user interface and thereby generating a modified first user interface to the enterprise content management system, including executing the selected user interface artifact in the modified first user interface as modified by the selected user interface aspect, wherein modifying the executing first user interface according to the selected user interface aspect comprises, at runtime, determining that the selected user interface aspect is selected to modify the selected user interface artifact, and executing the code of the selected user interface aspect instead of a corresponding portion of the code of the selected user interface artifact.

14. The computer program product recited in claim 13 , wherein the set of one or more user interface artifacts includes one or more of the following:

a user interface widget, a date input widget, a text input widget, an actionable widget, an action, a user interface event, a context menu, a page fragment, an action flow, a page, or a step.

15. The computer program product recited in claim 13 , wherein the set of one or more user interface artifacts includes a dynamic label aspect associated with changing a label associated with the selected user interface artifact.

16. The computer program product recited in claim 13 , wherein the set of one or more user interface artifacts includes a dynamic CSS class aspect associated with changing a CSS class associated with the selected user interface artifact.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 31, 2017
From: EMC CORPORATION
To: OPEN TEXT CORPORATION
Reel/Frame 041140/0320 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2017
From: EMC IP HOLDING COMPANY LLC
To: EMC CORPORATION
Reel/Frame 041047/0843 →
RELEASE OF SECURITY INTEREST Recorded Jan 23, 2017
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC CORPORATION
Reel/Frame 041073/0443 →
PATENT RELEASE (REEL:40134/FRAME:0001) Recorded Jan 23, 2017
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: EMC CORPORATION, AS GRANTOR
Reel/Frame 041073/0136 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2016
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 040203/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 17, 2016
From: TOTALE, SACHIN G.; VAIDYA, SAMIR YASIN
To: EMC CORPORATION
Reel/Frame 038616/0223 →
Cited By (1)
US 12,430,142