IP Library Granted Patent US 11,714,843
Granted Patent B2
US 11,714,843 · App. 16/514,946 · Granted Aug 1, 2023

Action objects in a semantic graph

Inventors: Saurabh Abhyankar (McLean, VA); Scott Rigney (Arlington, VA); Timothy Lang (McLean, VA)
Assignee: MicroStrategy Incorporated
G06F16/36G06F16/3344G06F16/9024G06F16/9027G06F16/953G06F16/9535G06F40/30G06N5/04G06T11/206G10L13/027
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,714,843
App. No.
16/514,946
Granted
Aug 1, 2023
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on computer-readable storage media, for providing action objects in a semantic graph. IN some implementations, semantic graph data indicates a semantic graph of objects and relationships between the objects. The semantic graph data defines an action object that represents an action that can be initiated, and the semantic graph data indicates a particular object type or a particular data type with which the action object can be used. An object of a particular object type or data of the particular data type is identified as being involved in processing of the one or more computers. In response to identifying the use of the object of the particular object type or data of the particular data type, an indication is provided that the action represented by the action object can be initiated.

Claims (44)

1. A method performed by one or more computers, the method comprising:

storing semantic graph data indicating a semantic graph of objects and relationships between the objects, wherein the semantic graph data defines an action object that represents an action that can be performed by the one or more computers, wherein the semantic graph data specifies that a particular attribute is used to perform the action defined by the action object, wherein the semantic graph data defines object types and specifies attributes for the respective object types including identifying one or more object types that have the particular attribute;

receiving a request from client device over a communication network;

generating response data to provide to the client device in response to the request;

determining that an object in the semantic graph is referenced by the response data or is used to generate the response data, wherein the identified object in the semantic graph is an object of one of the one or more object types that have the particular attribute; and

in response to determining that the object is referenced by the response data or is used to generate the response data, providing, to the client device in response to the request, user interface data configured to cause presentation of an interactive user interface element for the action with the response data at the client device, the interactive user interface element being selectable by a user to initiate the action using a value that the semantic graph data specifies for the particular attribute of the identified object.

2. The method of claim 1 , wherein determining that the object in the semantic graph is referenced by the response data or is used to generate the response data comprises identifying the object in search results generated in response to the request, a recommendation generated in response to the request, a user interface provided in response to the request, metadata for a user interface provided in response to the request, data retrieved from a database that is used to process the request, a document provided in response to the request, or a file provided in response to the request.

3. The method of claim 1 , wherein determining that the object in the semantic graph is referenced by the response data or is used to generate the response data comprises determining that an operation of an analytics system performed in response to the request involves the object.

4. The method of claim 1 , comprising:

after providing the user interface data, receiving data indicating user interaction with the interactive user interface element that triggers use of the action object to perform the action using the object; and

in response to receiving the data indicating the user interaction, performing the action specified by the action object.

5. The method of claim 1 , wherein determining that the object in the semantic graph is referenced by the response data or is used to generate the response data comprises identifying a reference to the object the object of the particular object type or data of the particular data type in data for a user interface or data for presentation on a user interface.

6. The method of claim 1 , further comprising:

identifying, based on the semantic graph data, one or more conditions associated with the action object; and

determining that the one or more conditions associated with the action object are satisfied;

wherein providing the user interface data for the interactive user interface element is based on determining that the one or more conditions associated with the action object are satisfied.

7. The method of claim 1 , comprising:

identifying, based on the semantic graph data, multiple action objects that represent different actions and that are each associated with the object of the particular object type or the data of the particular data type in the semantic graph;

selecting, based on the semantic graph data, a proper subset of the actions represented by the multiple action objects; and

providing user interface data for interactive user interface elements for only the actions in the selected proper subset.

8. The method of claim 1 , wherein the one or more computers are part of an analytics system, and the action is an action performed outside the analytics system.

9. The method of claim 1 , wherein the one or more computers are part of an analytics system, and the action is an action performed by the analytics system.

10. A system comprising:

one or more computers; and

one or more computer-readable media storing instructions that, when executed by the one or more computers, cause the one or more computers to perform operations comprising:

storing semantic graph data indicating a semantic graph of objects and relationships between the objects, wherein the semantic graph data defines an action object that represents an action that can be performed by the one or more computers, wherein the semantic graph data specifies that a particular attribute is used to perform the action defined by the action object, wherein the semantic graph data defines object types and specifies attributes for the respective object types including identifying one or more object types that have the particular attribute;

receiving a request from client device over a communication network;

generating response data to provide to the client device in response to the request;

determining that an object in the semantic graph is referenced by the response data or is used to generate the response data, wherein the identified object in the semantic graph is an object of one of the one or more object types that have the particular attribute; and

in response to determining that the object is referenced by the response data or is used to generate the response data, providing, to the client device in response to the request, user interface data configured to cause presentation of an interactive user interface element for the action with the response data at the client device, the interactive user interface element being selectable by a user to initiate the action using a value that the semantic graph data specifies for the particular attribute of the identified object.

11. One or more non-transitory computer-readable media storing instructions that, when executed by one or more computers, cause the one or more computers to perform operations comprising:

storing semantic graph data indicating a semantic graph of objects and relationships between the objects, wherein the semantic graph data defines an action object that represents an action that can be performed by the one or more computers, wherein the semantic graph data specifies that a particular attribute is used to perform the action defined by the action object, wherein the semantic graph data defines object types and specifies attributes for the respective object types including identifying one or more object types that have the particular attribute;

receiving a request from client device over a communication network;

generating response data to provide to the client device in response to the request;

determining that an object in the semantic graph is referenced by the response data or is used to generate the response data, wherein the identified object in the semantic graph is an object of one of the one or more object types that have the particular attribute; and

in response to determining that the object is referenced by the response data or is used to generate the response data, providing, to the client device in response to the request, user interface data configured to cause presentation of an interactive user interface element for the action with the response data at the client device, the interactive user interface element being selectable by a user to initiate the action using a value that the semantic graph data specifies for the particular attribute of the identified object.

12. The method of claim 1 , wherein the object of the particular object type has a value for the particular attribute or the particular data type provides a value for the particular attribute; and

wherein providing the user interface data is performed in response to determining that the object of the particular object type has a value for the particular attribute or the particular data type provides a value for the particular attribute.

13. The method of claim 1 , wherein a set of multiple objects are referenced by the response data or are used to generate the response data; and

wherein the method includes assessing the set of multiple objects to identify objects having attributes specified in the semantic graph data that are used by different action objects defined in the semantic graph data.

14. The method of claim 13 , wherein providing the user interface data comprises providing user interface data configured to cause presentation of multiple interactive user interface elements, wherein each of the multiple interactive user interface elements is selectable by a user to cause an action of a different action object defined in the semantic graph.

15. The method of claim 1 , wherein the semantic graph data specifies attributes for the respective object types with edges in the semantic graph that connect nodes representing objects in the semantic graph with nodes representing attributes in the semantic graph.

16. The method of claim 1 , further comprising determining that the semantic graph data specifies a value for the particular attribute of the identified object;

wherein providing the user interface data configured to cause presentation of an interactive user interface element for the action is performed in response to determining that the semantic graph data specifies a value for the particular attribute of the identified object.

Assignments (4)
CHANGE OF NAME Recorded Sep 19, 2025
From: MICROSTRATEGY INCORPORATED
To: STRATEGY INC
Reel/Frame 072974/0529 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT REEL/FRAME: 056647/0687, REEL/FRAME: 057435/0023, REEL/FRAME: 059256/0247, REEL/FRAME: 062794/0255 AND REEL/FRAME: 066663/0713 Recorded Sep 26, 2024
From: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS SUCCESSOR IN INTEREST TO U.S. BANK NATIONAL ASSOCIATION, IN ITS CAPACITY AS COLLATERAL AGENT FOR THE SECURED PARTIES
To: MICROSTRATEGY INCORPORATED; MICROSTRATEGY SERVICES CORPORATION
Reel/Frame 069065/0539 →
SECURITY INTEREST Recorded Jun 22, 2021
From: MICROSTRATEGY INCORPORATED
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 056647/0687 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2019
From: ABHYANKAR, SAURABH; RIGNEY, SCOTT; LANG, TIMOTHY
To: MICROSTRATEGY INCORPORATED
Reel/Frame 050318/0777 →