IP Library › Granted Patent US 11,886,891
Granted Patent B2
US 11,886,891 · App. 17/471,328 · Granted Jan 30, 2024

Context-based multiexperience element dynamically generated using natural language processing

Inventors: Qiu Shi Wang (Singapore, SG); Lin Cao (Singapore, SG)
Assignee: SAP SE
G06F9/451G06F3/0481G06F40/40H04L51/02
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,886,891
App. No.
17/471,328
Granted
Jan 30, 2024
Kind
B2
Abstract

Methods, systems, and computer-readable storage media for receiving initial input from a user of the application, the initial input indicating that a UI element is to be generated for the user, receiving context data representative of a context of the application when the input is received, the context data at least partially including a data schema definition of data accessed by the application, prompting the user for input at least partially based on the context data, receiving additional input responsive to the prompting, defining dynamic metadata based on at least a portion of the initial input, at least a portion of the additional input, and at least a portion of the data schema definition, the dynamic metadata including one or more actions that can be executed on data accessed through the UI element, and processing the dynamic metadata to generate the UI element for display in the application.

Claims (43)

1. A computer-implemented method for provisioning of a user interface (UI) element for an application during run-time of the application, the method being executed by one or more processors and comprising:

providing, during a runtime of the application, a set of UI elements for the application from static metadata that is generated during a design-time of the application;

enabling interaction of a user through one or more UI elements in the set of UI elements to execute one or more tasks using the application;

receiving, by the application, input from the user of the application after execution of the one or more tasks, the input indicating that a UI element is to be generated for the user, the UI element being absent from the set of UI elements; and

in response to the input:

receiving, by a metadata generator and from a context data cache, context data representative of a context of the application when the input is received, the context data at least partially comprising a data schema definition of data accessed by the application and representing at least one of the one or more tasks executed using the application prior to receiving the input;

defining, by the metadata generator, dynamic metadata based on at least a portion of the input, and at least a portion of the context data, the dynamic metadata comprising one or more actions that can be executed on data accessed through the UI element; and

processing, by a UI generator, the dynamic metadata to generate the UI element for display in the application at least partially by determining a set of control definitions for a set of controls based on the dynamic metadata, each control representing an action of the one or more actions, and calling an operating system application programming interface (API) to render controls in the UI element.

2. The method of claim 1 , wherein the input indicates a type of the UI element.

3. The method of claim 1 , further comprising receiving additional input from the user that indicates at least one action of the one or more actions.

4. The method of claim 1 , wherein the application comprises a chat bot that functions as a channel for receiving the input from the user and for prompting the user for additional input.

5. The method of claim 1 , wherein the input is processed using one or more natural language processing (NLP) techniques to determine metadata that is to be included in the dynamic metadata.

6. The method of claim 1 , wherein the one or more actions comprise a sort action, a filter action, a navigation action, and a search action.

7. The method of claim 1 , wherein the UI element comprises one or more of a list page, an object page, and an analytics page.

8. A non-transitory computer-readable storage medium coupled to one or more processors and having instructions stored thereon which, when executed by the one or more processors, cause the one or more processors to perform operations for provisioning of a user interface (UI) element for an application during run-time of the application, the operations comprising:

providing, during a runtime of the application, a set of UI elements for the application from static metadata that is generated during a design-time of the application;

enabling interaction of a user through one or more UI elements in the set of UI elements to execute one or more tasks using the application;

receiving, by the application, input from the user of the application after execution of the one or more tasks, the input indicating that a UI element is to be generated for the user, the UI element being absent from the set of UI elements; and

in response to the input:

receiving, by a metadata generator and from a context data cache, context data representative of a context of the application when the input is received, the context data at least partially comprising a data schema definition of data accessed by the application to and representing at least one of the one or more tasks executed using the application prior to receiving the input;

defining, by the metadata generator, dynamic metadata based on at least a portion of the input, and at least a portion of the context data, the dynamic metadata comprising one or more actions that can be executed on data accessed through the UI element; and

processing, by a UI generator, the dynamic metadata to generate the UI element for display in the application at least partially by determining a set of control definitions for a set of controls based on the dynamic metadata, each control representing an action of the one or more actions, and calling an operating system application programming interface (API) to render controls in the UI element.

9. The non-transitory computer-readable storage medium of claim 8 , wherein the input indicates a type of the UI element.

10. The non-transitory computer-readable storage medium of claim 8 , wherein operations further comprise receiving additional input from the user that indicates at least one action of the one or more actions.

11. The non-transitory computer-readable storage medium of claim 8 , wherein the application comprises a chat bot that functions as a channel for receiving the input from the user and for prompting the user for additional input.

12. The non-transitory computer-readable storage medium of claim 8 , wherein the input is processed using one or more natural language processing (NLP) techniques to determine metadata that is to be included in the dynamic metadata.

13. The non-transitory computer-readable storage medium of claim 8 , wherein the one or more actions comprise a sort action, a filter action, a navigation action, and a search action.

14. The non-transitory computer-readable storage medium of claim 8 , wherein the UI element comprises one or more of a list page, an object page, and an analytics page.

15. A system, comprising:

a computing device; and

a computer-readable storage device coupled to the computing device and having instructions stored thereon which, when executed by the computing device, cause the computing device to perform operations for natural language explanations for provisioning of a user interface (UI) element for an application during run-time of the application, the operations comprising:

providing, during a runtime of the application, a set of UI elements for the application from static metadata that is generated during a design-time of the application;

enabling interaction of a user through one or more UI elements in the set of UI elements to execute one or more tasks using the application;

receiving, by the application, input from the user of the application after execution of the one or more tasks, the input indicating that a UI element is to be generated for the user, the UI element being absent from the set of UI elements; and

in response to the input:

receiving, by a metadata generator and from a context data cache, context data representative of a context of the application when the input is received, the context data at least partially comprising a data schema definition of data accessed by the application and representing at least one of the one or more tasks executed using the application prior to receiving the input;

defining, by the metadata generator, dynamic metadata based on at least a portion of the input, and at least a portion of the context data, the dynamic metadata comprising one or more actions that can be executed on data accessed through the UI element; and

processing, by a UI generator, the dynamic metadata to generate the UI element for display in the application at least partially by determining a set of control definitions for a set of controls based on the dynamic metadata, each control representing an action of the one or more actions, and calling an operating system application programming interface (API) to render controls in the UI element.

16. The system of claim 15 , wherein the initial input indicates a type of the UI element.

17. The system of claim 15 , wherein operations further comprise receiving additional input from the user that indicates at least one action of the one or more actions.

18. The system of claim 15 , wherein the application comprises a chat bot that functions as a channel for receiving the input from the user and for prompting the user for additional input.

19. The system of claim 15 , wherein the input is processed using one or more natural language processing (NLP) techniques to determine metadata that is to be included in the dynamic metadata.

20. The system of claim 15 , wherein the one or more actions comprise a sort action, a filter action, a navigation action, and a search action.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2021
From: WANG, QIU SHI; CAO, LIN
To: SAP SE
Reel/Frame 057442/0313 →
Continuity (1)
Related Publication 20230086778A1 · Mar 23, 2023